Real-time frontend feedback while you code with AI.
Vipr is a free, local-first static analysis platform for TypeScript, React, and Next.js that tracks codebase health over time. It runs entirely on your machine and your code never leaves it. The CLI, the desktop app, and the VS Code extension are all available today.
Why Vipr
Built for
TypeScript-native depth
25+ analyses tuned for React hooks, Next.js boundaries, and TS-specific patterns. Rules written for JS/TS, not ported from another language.
Your code stays yours
Analysis runs locally. No cloud upload, no telemetry on source, no account required to run a scan.
Works with your AI tools
An embedded MCP server lets Claude, Cursor, Antigravity, Kilo Code, and Windsurf query your repo metrics while they edit.
Three pillars
Built for code you ship every day.
Depth
25+ analyses across your codebase
Cyclomatic, cognitive, Halstead, maintainability, dead code, React anti-patterns, and Next.js boundary leaks, all in a single pass.
Learn moreContinuity
Quality tracked sprint over sprint
Per-commit snapshots, velocity trends with inflection-point detection, and churn-weighted hotspot rankings.
Learn moreAgency
Your AI agent stops guessing
An embedded MCP server gives Claude, Cursor, Antigravity, Kilo Code, and Windsurf direct access to real metrics from your codebase.
Learn moreFile detail, in context
Open a file. See why it scored that way.
Health score, the metrics behind it, threshold context, and AI guidance on one screen. Read the number, see what moved it, then decide what to fix.
A value referenced inside useEffect is not listed in its dependency array, so the effect closes over the value from a previous render and silently uses stale data until the component re-mounts.
useEffect(() => fetch(url, { filters }), [url]);
The effect captures `filters` from the first render but never lists it in the dep array, so users see filtered results from the previous query until the next prop change forces a re-mount.
Overview
Arrange the dashboard around how you work
Drag, drop, and pin the widgets that match how your team works: score, hotspots, anti-patterns, budgets. Arrange them once and they stay put.
Per-file metrics
Every file scored, every metric tracked
Composite health for each file, broken down by complexity, churn, and maintainability. Trend pills show what moved since the last commit.
Composite Health Score
Churn × complexity
Four quadrants, one refactor queue
Files plot themselves by churn and complexity into four buckets: Concerning, Risky, Active, and Stable. The work order is clear before you start planning.
What it tracks
One local engine running twenty-five analyses.
- Analyses
- 25+ Cyclomatic, cognitive, Halstead, churn, anti-patterns, dead code, and the rest.
- First analysis
- ~2 min 300 files scored end to end on a typical laptop.
- Bytes uploaded
- 0 Local engine, local DB, local MCP. Your code never leaves the machine.
Hotspots
The files you change most are the ones worth fixing first
A treemap sized by impact and colored by risk. The dense, dark squares are where churn meets complexity. Those are the refactors that pay back fastest.
- Risk Score
- 87.4
- Risk Level
- High
- Complexity
- 64
- Dependency Impact
- 28
- Hotspot Issues
- 6
- Lines of Code
- 412
Dependencies
Trace the blast radius of any file
Walk upstream to see what pulls a module in. Walk downstream to see what breaks if it changes. Cycles get flagged the moment they form.
Day zero
Open a repo, get a verdict in minutes
A first-pass readout of overall health, top hotspots, and architectural shape. Useful on legacy code you inherited and on greenfield work that just shipped.
Architecture Review
Identify architectural anti-patterns, circular dependencies, and high coupling that may impact maintainability.
Differentiation
How Vipr compares to a linter and to AI review.
Linters check style and syntax. AI review works one pull request at a time. Vipr scores the whole codebase and tracks it across commits.
| Capability | Vipr | ESLint / Biome | AI code review |
|---|---|---|---|
| Understands React (hooks, boundaries, props) | ✓ | ✕ | ~ |
| Tracks quality as you code | ✓ | ✕ | ✕ |
| Can run 100% offline | ✓ | ✓ | ✕ |
| Works with AI agents via MCP | ✓ | ✕ | ✕ |
| Flags framework anti-patterns, not style | ✓ | ~ | ~ |
| One-time license, not per-seat or subscription-based | ✓ | ✓ | ✕ |
Surfaces
Same engine, four ways to use it.
All four are available today. Click through to see each surface.
CLI
The same engine you can install today. Terminal output, JSON for CI, Markdown for PRs.
IDE
VSCode, Cursor, Antigravity, Kilo Code, Windsurf, VSCodium. File metrics, hover cards, and AI guidance next to the code.
Desktop
A local-first dashboard for the whole repo. History, hotspots, dependency graph, MCP server.
MCP Server
Lets your AI agent query real metrics from your code instead of guessing. Runs on localhost.
Changelog
Shipped recently
Official CLI release notes for v0.37.0 covering features and bug fixes.
Official Desktop App release notes for v0.50.0 covering features, bug fixes, and performance improvements.
Official VSCode Extension release notes for v0.42.0 covering features.
Pricing
Free CLI forever. One-time payment for the rest.
No subscription. No per-seat fees. One purchase covers three devices and every update inside that major version. Powered by Polar.sh.
CLI
Free forever
Analyze any JS/TS repo from your terminal. No account, no usage limits.
VSCode Extension Pro
$49 once
Inline scores, hover cards, CodeLens, dashboard webview.
Desktop Pro
$99 once
The full local dashboard. History, hotspots, MCP server.
Want lifetime upgrades? Believer’s Bundle at $249 one-time, every future major version included.
(Lifetime means all future major-version releases tied to your license key.)Run it on the code you have been putting off.
Vipr reads the code on your machine. Nothing is uploaded, and there is nothing to configure before the first run.
Free forever. No account.
macOS · Apple Silicon · v0.49.4 · signed and notarized
The desktop app is free to use and free to keep. Pro unlocks the history: backfill, velocity, trend projections, and A/B compare.
What public beta means
We run this engine on Vipr's own codebase every day.
Bugs still surface. When one does, it lands in the changelog with a version number next to it.
Buying now covers all of v1: every release between here and v2, not just the build you downloaded today.
Fourteen days, full refund. Email support@vipr.dev.