Find issues in your React Native app
Find issues across state & effects, performance, architecture, security, and accessibility.
$ npx react-doctor@latest
View GitHub
Terminal - 508x590
~
pnpm run ios
npx react-doctor@latest
Try it on your codebase
PayPal
Rippling
Alibaba
PostHog

What users say

/goal get me to 100/100 in React Doctor score — you are welcome, this is why eval is everything.

GeorgeOpenClaw maintainer

Give your AI coding agent a medical degree in React with React Doctor. A lightning-fast CLI that identifies code smells and bottlenecks.

Better Stackbetterstack.com

A little agent I wrote that runs react-doctor on your PR and roasts you based on react code-quality regressions against main is one of the best things I have done for our react code quality.

Kyle MisteleCTO of HumanLayer

This is a next gen React linter with autofix. Opus 4.6 + React Doctor must definitely have a PhD.

ryoppippiFounding Engineer at Rork

Already shipped a few PRs with react-doctor.

MaheshFounding Engineer at supermemory

React Doctor is now an instant install for any React codebase I work on.

Rob KnightFounder of Zenbu (P26), Ex. Next.js @ Vercel

We've been using React Doctor in production for weeks and it's been fantastic. Giving agents guardrails to autocorrect code according to best practices is integral in an agentic-heavy codebase.

Colin ArmstrongFounder of Paragraph, ex-Google

React Doctor just came out! A tool that detects anti-patterns in your React app: unnecessary useEffects, accessibility errors, and prop drilling you can avoid with Context.

Miguel Ángel DuránCreator of midu.dev

I love trying out new toys Aiden makes. This week I took React Doctor for a spin on my Supercuts app and it scored a 77 — finding a really nice flow for cleaning up code with it.

Domitrius ClarkSenior Community Engineer at Netlify

React Doctor on every commit

All checks have passed
React Doctor

GitHub Actions

Get a health score for your React codebase

😞 -5
⚠️ Issues found

Code reviews

Find out why your codebase might be performing poorly

<motion.divreturn (-+<m.div
Get started