APP-04 · Folder compare and sync
DirCompare
Compare two folders side by side and sync them on your terms.
Both folders show as one aligned tree, coloured by status: identical, different, left only, right only. Compare by name, size, date or content, open a line-level diff, then plan a mirror, update or two-way sync and see it before anything moves.
What it does
01
Four ways to compare
Names, size, size and date (with a tolerance and a fix for one-hour DST shifts), or byte for byte, in parallel.
02
See the sync before it runs
Planned copies show as arrows and faded items, deletions as strikethrough. Execute shows a summary, and replaced files go to the Trash.
03
Real file diffs
Side-by-side text diff with word highlights and a minimap of every change. Binaries get a hex view at the first differing byte.
04
Snapshots of a folder
Save a .dirsnap, with SHA-256 checksums if you want, and compare it against the live folder next month.
05
Rules for matching names
Ignore case or extensions, normalise Unicode, or rewrite names with a regex so report_v2 pairs with report_v3.
06
Keyboard and command line
⌘R compares, ⌘1 to ⌘4 filter, ⌘↩ runs the plan. open -a DirCompare --args --left A --right B starts a comparison from a script.
What it doesn't do
- Sync plans are only planned from the command line. You still press Execute in the app.
- Comparing over the network works as fast as the share does.
Requirements
- macOS 14 or later
- Xcode 16 or the Swift 6 toolchain to build
Network access
None. The app makes no network requests.
Title block
- Sheet
- APP-04
- Version
- 1.0.0
- Minimum macOS
- 14.0
- Code
- Swift · Shell
- Lines
- 4,353
- Test cases
- 20
- Last build
- 25 Oct 2026
- License
- MIT
- Bundle ID
- local.dircompare.app
- Repository
- dir-equal
Line log
- 37055a7
Add MIT license and release script
- 70009ed
Initial commit: DirCompare folder comparison app for macOS