Fallow replaces jscpd with a faster, more capable duplication engine. It also covers unused code detection, complexity analysis, circular dependencies, and architecture boundaries in the same binary.Documentation Index
Fetch the complete documentation index at: https://docs.fallow.tools/llms.txt
Use this file to discover all available pages before exploring further.
Migration workflow
Preview the migration
Run Fallow searches for
fallow migrate --dry-run to see the generated config without writing anything:.jscpd.json and the jscpd field in package.json.Review the config
Open the generated config and verify the translated thresholds, token counts, and ignore patterns.
What gets migrated
| jscpd | fallow |
|---|---|
threshold | duplicates.threshold |
minTokens | duplicates.minTokens |
minLines | duplicates.minLines |
ignore | ignorePatterns |
format | — (fallow auto-detects languages) |
Comparison
| fallow | jscpd | |
|---|---|---|
| Speed (real-world) | 8—26x faster | Baseline |
| Detection modes | 4 (strict, mild, weak, semantic) | 1 (token-based) |
| Algorithm | Suffix array with LCP | Rabin-Karp rolling hash |
| Unused code + circular deps | Built-in (fallow dead-code) | Not included |
| Complexity + maintainability | Built-in (fallow health) | Not included |
| Clone families | Yes, with refactoring suggestions | No |
| Cross-language | TS to JS type stripping | Format-based |
| Baseline tracking | Yes | No |
| Runtime dependency | None | Node.js |
Detection mode mapping
jscpd uses a single token-based detection mode. The closest fallow equivalent isstrict, which performs exact token matching.
Fallow defaults to mild mode, which normalizes syntax variations and may flag more clones than jscpd did. To match jscpd’s behavior more closely, use strict mode:
One tool for the full picture
Fallow covers unused code, duplication, complexity hotspots, circular dependencies, and architecture boundaries in a single binary. It replaces jscpd, knip, and madge.
See also
Duplication analysis
Deep dive into fallow’s duplication detection engine.
fallow dupes
Full CLI reference for the dupes command.