Deckard vs jscpd
Deckard
github.comjscpd
jscpd.devSide by side
| Figure | Deckard | jscpd |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 0 | 2 |
| Spec score · Code Duplication Detection Tools | 7.5 (#8) | 8.5 (#2) |
| Spec score · Code Clone Detection Tools | 7.5 (#12) | 8.6 (#2) |
| Languages | The release notes describe support for C, Java 7, PHP 5, and Solidity syntax. | The site says jscpd supports 224 languages. |
| License | The repository license permits source and binary redistribution subject to its stated conditions and disclaims warranties. | The project and its published packages use the permissive MIT license. |
| Purpose | Deckard is a tree-based code clone detection tool that can also report clone-related bugs. | jscpd scans source code for duplicate code and can fail a build when duplication exceeds a configured threshold. |
| Reports | The tool can convert clone or bug reports into HTML for inspection in a browser. | Reporters include HTML, JSON, XML, README badges, SARIF, CodeClimate, and OpenMetrics formats. |
Plans
In their own words
jscpd
jscpd is a free, open-source tool for finding repeated code in repositories. It can fail a build when duplication exceeds a configured threshold, making it usable in local development and CI. The project says it supports 224 languages. Exact clones are detected by default, while renamed, near-miss, and semantic clone checks are optional; semantic detection is experimental.
Version 5 is available as a self-contained native binary that does not need Node.js, with direct macOS, Linux, and Windows binaries for x64 and ARM64. Reports include HTML, JSON, XML, README badges, SARIF, CodeClimate, and OpenMetrics. The GitHub Action can enforce a threshold and upload SARIF for GitHub Code Scanning, and GitLab CI reporters are documented. Developers can also use pre-commit hooks or Docker. A dashboard summarizes project size, duplication, complexity, dead code, and a health score. Dead-code analysis covers JavaScript, TypeScript, and Python, plus Rust when compiler diagnostics are supplied.