fallow
Codebase intelligence for TypeScript and JavaScript. Health, complexity hotspots, duplication, architecture boundaries, circular dependencies, design-system dri
What is fallow?
Codebase intelligence for TypeScript and JavaScript. Health, complexity hotspots, duplication, architecture boundaries, circular dependencies, design-system drift, and unused code, from one graph. CLI, GitHub Action, LSP, MCP, and VS Code. Rust, MIT licensed.
Overview of fallow
What it is
fallow is a codebase intelligence tool for TypeScript and JavaScript. It builds a repository graph of modules, exports, dependencies, functions, and styling tokens. From that graph it analyzes health, complexity hotspots, duplication, architecture boundaries, circular dependencies, design-system drift, and unused code. It runs as a CLI, GitHub Action, LSP, MCP, and VS Code extension. The analyzer is written in Rust and uses Oxc for syntactic analysis. It needs no TypeScript compiler and no configuration to start.
Key features
- Health score (0–100) with complexity hotspots, git churn, and ownership - Architecture boundary violations with presets (bulletproof, layered, hexagonal, feature-sliced)
- Circular dependency detection - Code duplication in JS, TS, CSS, Vue, Svelte, and Astro components - Styling drift analysis for CSS and CSS-in-JS - Unused files, exports, types, class/enum members, and dependencies with auto-fix - Pull request audit gate that fails only on findings introduced by the change
Use cases
- Checking whether a pull request is safe to merge with a changed-file gate - Understanding where code is hard to change via complexity hotspots and health scores - Verifying architecture holds with boundary violation checks and circular dependency detection - Finding copied code across the codebase - Detecting UI drift from the design system - Identifying unused code and applying auto-fixes - Reviewing security candidates ranked by reachability from entry points (opt-in)
Getting started
Run in the root of any JS or TS project: bash npx fallow To keep fallow in the project, install it as a dev dependency: bash npm install --save-dev fallow For other installation methods (pnpm, yarn, cargo, Docker) see the repository README.
License and pricing
MIT license. Open source.
Based on the project's public README and repository metadata.