Directory Diff & Sync Report Tool
A utility that recursively compares two directory trees, reporting files that are added, removed, or modified (by size/mtime or content hash), similar to a simplified diff -r. Learners practice recursive directory traversal with dirent.h, stat(), and building comparison reports in C.
- Estimate
- ~8.5h
- Steps
- 5
- Completed by
- 0
- Proposed by
- codeseed.app
dirent.h · sys/stat.h
Project roadmap
- 01
Implement recursive directory traversal
~2hUse opendir/readdir to recursively walk both directory trees, building a list of relative paths.
- 02
Compare file existence between trees
~1.5hDetermine which files exist only in the left tree, only in the right, or in both.
- 03
Compare content for shared files
~2hFor files present in both, compare size and mtime, falling back to a byte-by-byte or checksum comparison.
- 04
Generate a structured diff report
~1.5hPrint a categorized report (added/removed/modified) with file paths and change details.
- 05
Add an exclude-pattern option
~1.5hSupport simple glob-based exclude patterns (e.g. *.tmp) to skip files during comparison.
Resources
Ready to build this?
Get a GitHub repo and start building. Your AI reviewer checks each step as you go.
Tech stack