Open Source Alternatives LogoOpen Source Alternatives
AlternativesBlogAdvertise
Open Source Alternatives LogoOpen Source Alternatives

Stay Updated

Subscribe to our newsletter for the latest news and updates about Alternatives

Open Source Alternatives LogoOpen Source Alternatives

Handpicked Open Source Alternatives to Paid Softwares

Product
  • Search
  • Categories
  • Tag
  • Sign In
Resources
  • Blog
  • Collection
  • Submit
  • Advertise your tool
Company
  • Privacy Policy
  • Terms of Service
  • Refund Policy
  • Sitemap
Copyright © 2026 All Rights Reserved.
Home/Categories/Web Development/react-doctor
react-doctor logo

react-doctor

Open source alternative to SonarQube

Analyze React apps for state, performance, architecture, security, and accessibility issues with a local CLI health score and CI-friendly fixes.

11.6K starsTypeScriptMITActive this week
Visit website
GitHub repo
react-doctor screenshot showing health score dashboard
Contents
  1. 01Who react-doctor is for
  2. 02The problem it solves
  3. 03How it solves it
  4. 04Strengths and trade-offs
  5. 05react-doctor vs alternatives
  6. 06Install and self-host
  7. 07Tech stack
  8. 08FAQ
  9. 09Similar open-source tools
TL;DR

react-doctor React Doctor scans a React codebase and returns a 0-100 health score with categorized diagnostics covering state management, performance, architecture, security, and accessibility. Run it in one command: `npx react-doctor@latest`.MIT · TypeScript · 11.6K stars · Active this week

who it's for

Who react-doctor is for#

Team adding React quality gate to CI

Adds react-doctor to CI with `--diff main` so every PR only fails when it introduces new React health regressions, not for pre-existing baseline issues.

Developer pre-PR self-review

Runs `npx react-doctor@latest` before submitting a PR to get a prioritized issue list without waiting for reviewer feedback.

Tech lead with AI coding tools

Runs `npx react-doctor@latest install` into their Cursor setup so AI-generated code gets validated against React best practices before it is committed.

Agency scoping a React refactor

Does a quick health check on a client's inherited codebase to scope a React refactor engagement before committing to a timeline.

tech stack · detected from GitHub

What it's built on#

Languages
JavaScriptTypeScript
Frameworks
React
frequently asked

FAQ#

Will react-doctor break my CI if my current score is low?
Does it work with React Native?
What does the `install` command do?
also worth a look

Similar open-source tools#

Grit

Grit

Automate code migrations at scale using a pattern-matching DSL

4.5KRustMIT

Repository

Stars
11.6K
Forks
376
License
MIT
Latest
[email protected]
Last commit
7 days ago
Last verified
May 30, 2026
Repo
millionco/react-doctor ↗

Additional details

Language
TypeScript
Open issues
16
Contributors
14
First release
2026

Categories

Web DevelopmentDeveloper ToolsAI & Machine Learning

Tags

Developer ToolsAI Coding AssistantCoding

Solo developer on Next.js project

Monitors health score over time as a lightweight code quality signal while building a Next.js app without a full SonarQube setup.

the problem

The problem it solves#

Coding agents and junior developers routinely introduce React anti-patterns: effects that run too often, components with too many responsibilities, missing accessibility attributes, and performance-killing render patterns. Standard ESLint configurations catch syntax-level issues but miss architectural patterns that only become visible when you look at the full component tree. Manual code reviews for React best practices are time-consuming, inconsistent, and do not run automatically in CI.

how react-doctor solves it

How it solves it#

0-100 health score with severity breakdown

Outputs a 0-100 health score with severity breakdown: 75+ is great, 50-74 needs work, under 50 is critical

Five diagnostic surfaces

Covers five diagnostic surfaces: state and effects, performance, architecture, security, and accessibility

Automatic framework detection

Detects your framework (Next.js, Vite, React Native) and adjusts its rule set automatically

GitHub Actions integration with PR comments

GitHub Actions composite action ships in the repo with sticky PR comments, configurable fail-on threshold, and a score output for downstream steps

--diff mode for incremental CI

`--diff <base>` mode scopes diagnostics to changed files only, catching new regressions without requiring a clean baseline

Agent install mode prevents future violations

`npx react-doctor@latest install` writes best-practice rules into your coding agent's config files so it stops writing the bad patterns in the first place

strengths · trade-offs

Strengths and trade-offs#

Strengths

  • Zero configuration, one commandZero configuration required; works at the project root with one npx command
  • Drop-in CI integrationCI integration is drop-in: a composite GitHub Actions workflow ships in the repo with documented fail-on thresholds
  • Closes detection-to-prevention loop for agentsThe agent-install mode puts rules where agents read them, closing the loop between detection and prevention
  • MIT licensed and actively maintainedMIT licensed and actively maintained

Trade-offs

  • -React-only, no other frameworksFocused exclusively on React; not useful for Vue, Svelte, Angular, or other frontend frameworks
  • -Dead-code detection removed in v0.2Dead-code detection was removed in v0.2 (knip integration dropped); run `npx knip` separately if you need it
  • -Heuristic scores, some false positivesHealth score thresholds are heuristics, not definitive quality guarantees; context-dependent rules may flag valid patterns as issues
versus alternatives

react-doctor vs alternatives#

react-doctor is an MIT-licensed React quality scanner for teams using coding agents to generate or modify React code.

vs CodeRabbit: CodeRabbit reviews pull requests across hosted Git platforms and IDE or CLI workflows, with AI comments and paid team plans. react-doctor is narrower and local-first: it runs through the npx react-doctor latest command, scores React code from 0 to 100, and flags issues across state, effects, performance, architecture, security, and accessibility.

vs Snyk Code: Snyk Code focuses on static application security testing and security findings across supported languages. react-doctor should not replace a security scanner; it is better for React-specific regressions, framework-aware rules, agent instruction installation, and PR score gates in Next.js, Vite, and React Native projects.

vs SonarQube Cloud: SonarQube Cloud is broader code quality and security governance for many languages and repositories. react-doctor is better when the immediate problem is AI-generated React code that violates framework patterns, but SonarQube is still the stronger choice for organization-wide quality gates, centralized reporting, and cross-language policy.

install · self-host

Install and self-host#

bash
Setup from the root of a React project:
npx react-doctor@latest install

Run an audit locally:
npx react-doctor@latest

npx react-doctor@latest install writes React best-practice rules into the config files for your detected coding agents (Claude Code, Cursor, Codex, and 50+ others). This teaches the agent the rules upfront so it avoids writing code that react-doctor would flag.

orca

orca

The ultimate IDE for coding agents

3.3KTypeScriptMIT
CLI-Anything

CLI-Anything

Empower AI agents with agent-native CLIs

42.1KPythonApache-2.0
oh-my-pi

oh-my-pi

A coding agent with the IDE wired in

7.2KTypeScriptMIT
Understand-Anything

Understand-Anything

Interactive knowledge graphs for codebases

53KTypeScriptMIT
agentmemory

agentmemory

Persistent memory for AI coding agents

21.4KTypeScriptApache-2.0

Only if you configure it to. By default, --fail-on error exits non-zero when error-severity rules fire. Set --fail-on none for advisory mode that reports findings but never blocks a build.

Yes. React Doctor detects your project framework and applies React Native-specific rules automatically. Framework detection is based on your installed packages and project structure.