# jscpd > Copy/paste detector for programming source code. Rust engine, self-contained binary, no Node.js runtime required. ## Documentation Sets - [jscpd](https://jscpd.dev/llms-full.txt) ## Project - [Support jscpd](https://jscpd.dev/support): How to support jscpd development: Open Collective, GitHub Sponsors, and crypto. ## Docs - [Introduction](https://jscpd.dev/raw/getting-started/introduction.md): Welcome to jscpd documentation. - [Installation](https://jscpd.dev/raw/getting-started/installation.md): Get started with jscpd. - [Configuration](https://jscpd.dev/raw/getting-started/configuration.md): Configure jscpd for your project. - [Supported Formats](https://jscpd.dev/raw/getting-started/supported-formats.md): Languages and formats supported by jscpd. - [Agent Skill](https://jscpd.dev/raw/getting-started/agent-skill.md): Use jscpd with AI coding assistants to automatically detect and refactor code duplications. - [Changelog](https://jscpd.dev/raw/getting-started/changelog.md): Release history and what's new in jscpd. - [Migrating from v4 to v5](https://jscpd.dev/raw/getting-started/migration.md): Guide for upgrading from jscpd v4 (TypeScript) to v5 (Rust). - [jscpd v4 (TypeScript)](https://jscpd.dev/raw/getting-started/v4.md): The Node.js version of jscpd — where it lives, when to use it, and how to install and run it. - [Guides](https://jscpd.dev/raw/guides.md): Longer reads on duplicate detection and how to use jscpd well. - [Types of Code Clones](https://jscpd.dev/raw/guides/clone-types.md): Exact, renamed, near-miss and semantic clones, and which of them jscpd finds. - [How Detection Works](https://jscpd.dev/raw/guides/how-detection-works.md): How jscpd turns source code into language tokens before it looks for duplicates, and what that means for the clones you get. - [Duplication Trend over Git History](https://jscpd.dev/raw/guides/history.md): Scan every commit in a range with --history and see whether duplication is going up or down, as a chart and a table in the terminal. - [Project Dashboard](https://jscpd.dev/raw/guides/dashboard.md): One screen with a project's size, duplication, complexity and dead code, from a single jscpd --dashboard run. - [Project Health Score](https://jscpd.dev/raw/guides/health.md): One 0-100 score with a grade for a codebase, from how much of it is duplicated, dead or concentrated in complex files, extensible with coverage, test and security metrics. - [CI & Hooks](https://jscpd.dev/raw/ci-and-hooks.md): Integrate jscpd into your CI pipeline and git hooks. - [Use jscpd in CI](https://jscpd.dev/raw/ci-and-hooks/ci.md): Run jscpd in GitHub Actions, GitLab CI, and other CI systems to enforce duplication thresholds. - [Use jscpd in Pre-Commit Hook](https://jscpd.dev/raw/ci-and-hooks/pre-commit.md): Run jscpd before every commit to prevent duplicated code from entering the repository. - [Reporters](https://jscpd.dev/raw/reporters.md): Output formats and reporters in jscpd. - [HTML Reporter](https://jscpd.dev/raw/reporters/html.md): Generate interactive HTML reports. - [JSON Reporter](https://jscpd.dev/raw/reporters/json.md): Generate JSON reports for CI/CD integration. - [Badge Reporter](https://jscpd.dev/raw/reporters/badge.md): Generate SVG badges for your README. - [SARIF Reporter](https://jscpd.dev/raw/reporters/sarif.md): Generate SARIF reports for GitHub Code Scanning integration. - [CodeClimate / GitLab Reporter](https://jscpd.dev/raw/reporters/codeclimate.md): Generate GitLab Code Quality reports in the CodeClimate issue format. - [OpenMetrics Reporter](https://jscpd.dev/raw/reporters/openmetrics.md): Generate OpenMetrics reports for GitLab CI metrics integration. - [Benchmarks](https://jscpd.dev/raw/benchmarks.md): How jscpd v5 compares to other copy/paste detectors — speed, format coverage, and token efficiency. - [Detection Speed](https://jscpd.dev/raw/benchmarks/detection-speed.md): Benchmark comparison of jscpd@5 vs 5 other CPD tools — speed and detection accuracy. - [Multi-Format Detection](https://jscpd.dev/raw/benchmarks/cross-format.md): How jscpd detects duplicates across Svelte, Astro, Vue, and Markdown formats — vs other tools. - [AI Token Efficiency](https://jscpd.dev/raw/benchmarks/ai-token-efficiency.md): How jscpd's AI reporter saves tokens compared to other CPD tools — 8× reduction for LLM workflows. - [API](https://jscpd.dev/raw/api.md): Use jscpd programmatically in your applications. - [Rust Crates (v5)](https://jscpd.dev/raw/api/core.md): Use jscpd's Rust crates for custom integrations. - [MCP Server](https://jscpd.dev/raw/api/mcp-server.md): Use jscpd as a Model Context Protocol (MCP) server for AI assistants with the built-in stdio transport. - [Trending](https://jscpd.dev/raw/trending.md): GitHub trending repositories analyzed with jscpd — clone counts and duplication statistics, refreshed daily. - [Research](https://jscpd.dev/raw/research.md): Peer-reviewed papers, theses, patents and books that use or cite jscpd, with how each one used it. - [Articles](https://jscpd.dev/raw/articles.md): Blog posts, tutorials, talks and case studies that use jscpd, verified at the source. ## Landing - [jscpd - Copy/Paste Detector for Source Code](https://jscpd.dev/raw/index.md): Copy/paste detector for source code that finds duplicated, dead and overly complex code across 224 languages, scores overall codebase health, and fails the build when duplication crosses your threshold — a native Rust binary with an MCP server, agent skills, and an LLM-friendly reporter.