I joined the DEV community three years ago, but this is only my second post here. My first one introduced a small Java project I’d just released: DupeLens, a command-line tool for finding duplicate files.
That post didn’t get any responses. I’m sharing an update now because the project has continued to grow, with improvements from me and contributions from others.
DupeLens is a read-only Java CLI that finds files with identical contents and can create an offline HTML report. It shows you what it found without deleting or moving anything.
Since my first post, the project has grown in a few useful ways:
A simpler start: You can run it from source with Java 17 or newer. Maven is optional.
Safer scans: DupeLens groups files by size before hashing candidates with SHA-256. It skips symbolic links and reports unreadable files as warnings.
A portable report: The generated HTML works offline in a browser, with no server or external scripts.
More careful reporting: Results are sorted by redundant bytes, and the tool avoids overwriting an existing report.
Broader checks: The project now includes integration checks and GitHub Actions coverage across Java 17 and 21 on Linux, macOS, and Windows.
A quick example:
java -jar target/dupelens.jar ./your-folder --html report.html
Or run it directly from source:
java src/main/java/dev/dupelens/Main.java ./your-folder --html report.html
This is still a small tool, and there are limits: a scan isn’t an atomic snapshot, and DupeLens doesn’t compare file bytes after matching SHA-256 hashes. It’s designed to help you inspect duplicates while keeping control of your files.
Thanks to everyone who has contributed feedback, code, or time to the project. Open-source work gets better when people take a look and help shape what comes next.
The README lists exclusion patterns, machine-readable output, and scan cancellation as possible next steps. If one of those would be useful to you—or if you spot something I could improve—please open an issue or pull request.
Repository: https://github.com/illusionoftalha/dupelens
If you try DupeLens, I’d love to hear what worked, what didn’t, and what you’d like to see next.



