Skip to content
SPECIFICTION
Get listed

Dolos vs jscpd

Dolos

dolos.ugent.be

jscpd

jscpd.dev

Side by side

FigureDolosjscpd
Price fromFreeFree
Free planYesYes
Free trial——
Open sourceYesYes
WebYes—
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYesYes
Self-hostedYesYes
Plans published22
Spec score · Code Duplication Detection Tools8.7 (#1)8.5 (#2)
LanguagesDolos uses Tree-sitter parsers and supports common languages including Bash, C, C++, C#, Elm, JavaScript, Java, PHP, Python, and TypeScript out of the box.The site says jscpd supports 224 languages.
MakerDolos is developed by Team Dodona at Ghent University in Belgium.The site credits Andrey Kucherenko and contributors; it does not state a headquarters or founding year in the pages opened.
PurposeDolos detects plagiarism by finding similarities between source code submissions.jscpd scans source code for duplicate code and can fail a build when duplication exceeds a configured threshold.
ReportsReports include similarity, total overlap, and the longest matching fragment for file pairs.Reporters include HTML, JSON, XML, README badges, SARIF, CodeClimate, and OpenMetrics formats.
Security statementThe home page describes the hosted web application as secure, private and fast.Snyk reports no direct vulnerabilities and no known security issues for the version it analyzed, excluding dependency vulnerabilities.
Self-hostingThe open-source web application can be hosted by users on their own infrastructure.The product is distributed as a local binary, package, container or source build and has no vendor-hosted execution requirement stated.
What it doesDolos detects similarities and possible plagiarism among programming source-code submissions.jscpd detects duplicated source-code blocks and can fail builds when configured duplication thresholds are exceeded.

Plans

Dolos

  • Dolos web appFree
  • Free web applicationFree

Dolos pricing →

jscpd

  • jscpdFree
  • jscpd open-source distributionFree

jscpd pricing →

In their own words

Dolos

Dolos is a free, open-source tool for finding similarities between source-code submissions, particularly for teachers reviewing tests, exams, and exercises where collaboration may be allowed in small groups. Its analysis process tokenizes files, fingerprints token sequences, indexes matches, and produces reports. For each file pair, reports include similarity, total overlap, and the longest matching fragment. Dolos uses Tree-sitter parsers and supports languages including Bash, C, C++, C#, Elm, JavaScript, Java, PHP, Python, and TypeScript. The web app accepts ZIP files and detects languages from file extensions; in mixed-language archives, it analyzes only the dominant language unless a language is selected. Its public API accepts ZIP submissions up to 10 MB, with the CLI or library recommended for larger submissions. Analyses can also run locally, with results displayed in a browser, or on a self-hosted server. The free web app is hosted on Ghent University servers in Belgium. Dolos provides a JSON API for integrations such as Dodona and lists CSV as a report export format.

Visit dolos.ugent.be

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.

Visit jscpd.dev