C++intermediatedevopsAI generated

File Deduplication Tool

A utility that scans a directory tree, computes SHA-256 hashes of file contents to find exact duplicates, and reports or interactively removes redundant copies while keeping one original. Learners practice filesystem traversal with std::filesystem, hashing, and building safe interactive CLI tools.

Estimate
~8h
Steps
5
Completed by
0
Proposed by
codeseed.app

std::filesystem · OpenSSL (SHA-256)

Project roadmap

  1. 01

    Recursively enumerate files

    ~1h

    Use std::filesystem::recursive_directory_iterator to collect all file paths under a root directory.

  2. 02

    Compute file content hashes

    ~2h

    Hash each file's contents with SHA-256 via OpenSSL to build a hash-to-paths map.

  3. 03

    Identify duplicate groups

    ~1.5h

    Filter the map to hashes with more than one associated path, grouping duplicates together.

  4. 04

    Build the interactive removal flow

    ~2h

    For each duplicate group, show the files and let the user choose which copies to delete, keeping at least one.

  5. 05

    Add a dry-run/report-only mode

    ~1.5h

    Add a flag that only prints a report of duplicates and reclaimable space without deleting anything.

Ready to build this?

Get a GitHub repo and start building. Your AI reviewer checks each step as you go.

~8h · 5 steps

Tech stack

std::filesystemOpenSSL (SHA-256)