Skip to content

Add Duplicate File Finder mini-project - #98

Merged
iamwatchdogs merged 3 commits into
Grow-with-Open-Source:mainfrom
zain-cs:duplicate-file-finder
Aug 9, 2026
Merged

Add Duplicate File Finder mini-project#98
iamwatchdogs merged 3 commits into
Grow-with-Open-Source:mainfrom
zain-cs:duplicate-file-finder

Conversation

@zain-cs

@zain-cs zain-cs commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds a new mini-project: a CLI tool that finds duplicate files in a
directory based on content hashing (SHA-256), not just filename or size.

What it does

  • Recursively scans a directory
  • Groups files by size first (cheap pre-filter), then hashes remaining
    candidates to confirm true duplicates
  • Reports duplicate groups and estimated reclaimable disk space
  • Optional --delete flag to remove duplicates (with confirmation prompt)

Testing

Included a pytest suite covering:

  • Hash consistency
  • Detecting identical-content files
  • Ignoring unique files
  • Nested directory handling
  • Empty directory edge case

All 5 tests pass locally. No new dependencies — standard library only.

Checklist

  • Follows project style guidelines (single quotes, f-strings, 120-char lines)
  • Tests added and passing
  • README added
  • No unrelated files changed

@github-actions

Copy link
Copy Markdown

👋 @zain-cs
Thank you for raising your pull request.
Please make sure you have followed our contributing guidelines. We will review it as soon as possible.

@iamwatchdogs iamwatchdogs left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed and Approved by @iamwatchdogs

@iamwatchdogs
iamwatchdogs merged commit 8809ab7 into Grow-with-Open-Source:main Aug 9, 2026
4 checks passed
@github-actions

github-actions Bot commented Aug 9, 2026

Copy link
Copy Markdown

Thank you for contributing @zain-cs. Make sure to check your contribution on GitHub Pages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants