CloneWorks vs jscpd
CloneWorks
github.comjscpd
jscpd.devSide by side
| Figure | CloneWorks | jscpd |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 2 |
| Spec score · Code Clone Detection Tools | 7.9 (#4) | 8.6 (#2) |
| Clone types | The repository describes a test run that performs Type-3 clone detection. | It detects exact clones by default and offers opt-in detection for renamed, near-miss, and semantic clones; semantic detection is described as experimental. |
| Languages | The input builder lists Java, C, C++, C#, and Python as supported input languages. | The site says jscpd supports 224 languages. |
| Purpose | CloneWorks prepares source code and detects code clones in the prepared fragments. | jscpd scans source code for duplicate code and can fail a build when duplication exceeds a configured threshold. |
| System requirements | CloneWorks requires FreeTXL 10.6 or later, gcc, make, and Java 7 or later. | The native binary needs no runtime; the npm launcher requires Node.js 18 or newer, and Python packaging supplies platform wheels. |
Plans
In their own words
CloneWorks
CloneWorks prepares source code into fragments and detects code clones in those fragments. It supports Linux, macOS, and Windows, with a token-based detection method and repository-level scan scope. Its input builder supports Java, C, C++, C#, and Python, and can extract blocks, functions, or files. The detector accepts a minimum similarity threshold from 0.0 to 1.0; the repository describes a Type-3 clone-detection test run. When an index exceeds available memory, a partitioned partial-index mode is available, though the README says its partition size must be determined experimentally. CloneWorks requires FreeTXL 10.6 or later, gcc, make, and Java 7 or later. The input builder runs more slowly on Cygwin because process creation is slower on Windows. It is free to use, with acknowledgement required; copies, modifications, and derivatives must remain under the license and be distributed without charge. The license also provides the software as-is without warranty.
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.