Commit Graph

1536 Commits

Author SHA1 Message Date
Aiden Bai c36f222c53 remove warning count from website summary
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 07:01:42 -08:00
Aiden Bai 29cd7d2fb6 skip animation on repeat visits using localStorage
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 07:00:52 -08:00
Aiden Bai 7cec5fbe02 add warning count to summary for consistency with CLI output
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:59:31 -08:00
Aiden Bai f605f49df6 fix mobile scroll by removing overflow:hidden from body
Use min-h-screen with native body scroll instead of h-screen with
overflow-y-auto. Mobile browsers can now scroll to bottom naturally.

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:58:19 -08:00
Aiden Bai 5675b3736b improve mobile: limit to 3 diagnostics, hide accordion, add bottom padding
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:56:25 -08:00
Aiden Bai 3c6dd30d90 set favicon.png as site icon
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:54:41 -08:00
Aiden Bai 99ad5284f8 remove branding text from website terminal, keep box face only
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:49:50 -08:00
Aiden Bai 389af55714 fix box face alignment using pre tag for monospace rendering
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:49:09 -08:00
Aiden Bai 4dfaeab2ad simplify website branding to inline face, drop box art
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:48:00 -08:00
Aiden Bai 05d2f7929c add box face branding to website terminal above score
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:46:08 -08:00
Aiden Bai b239d555ec make React Doctor text not dim, only URL dim
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:44:46 -08:00
Aiden Bai 5ed8d44590 move box face above score gauge
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:44:12 -08:00
Aiden Bai 65ba25e951 simplify doctor face to single-line emoticon
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:42:34 -08:00
Aiden Bai 7aa7b3fd47 add box head face to score output, changes by score
Green (75+): happy ◠ ◠ / ▽
Yellow (50-74): concerned • • / ─
Red (<50): dead x x / ▽

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:41:17 -08:00
Aiden Bai e2bbccb304 simplify score output to minimal branding line
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:40:13 -08:00
Aiden Bai 330afc2f20 add ASCII doctor art to CLI score output
Shows a doctor character colored by score with a verdict message:
- green: says your codebase is healthy
- yellow: found some issues to fix
- red: needs your attention

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 06:27:30 -08:00
Aiden Bai 327fcc9b50 fix formatting
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:55:14 -08:00
Aiden Bai de1cbd4559 add --fix flag to scan and open Ami to auto-fix issues
Checks if Ami is installed first, installs if not, then deep-links
with the fix prompt. Works as a flag (npx react-doctor . --fix) or
as subcommands (npx react-doctor fix / install-ami).

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:51:59 -08:00
Aiden Bai f0532a54ad fix install-ami command description
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:48:18 -08:00
Aiden Bai 83790648c9 add fix and install-ami commands to deep-link into Ami
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:47:32 -08:00
Aiden Bai 0f46ee39a7 use npx -y flag in all commands
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:41:35 -08:00
Aiden Bai 80d676e345 update README with consumer-friendly docs
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:38:29 -08:00
Aiden Bai 9965871832 add website with animated CLI terminal landing page
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 05:35:45 -08:00
Aiden Bai c993b6928f fix 2026-02-16 03:47:25 -08:00
Aiden Bai 43816dbc45 fix 2026-02-16 03:45:48 -08:00
Aiden Bai ccf404a1e8 fix: gracefully handle failures in oxlint, reduced-motion check, and summary file writing
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 02:26:43 -08:00
Aiden Bai f1407d7c3e fix: gracefully handle knip failures on non-React config files
Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 02:24:53 -08:00
Aiden Bai 2d9a69b374 add actionable help text, animation rules, per-rule summary files, and strengthen detection
- Add RULE_HELP_MAP with concrete fix suggestions for all 55 rules
- Add animation/motion rules: no-transition-all, no-global-css-variable-animation, no-large-animated-blur, no-scale-from-zero, no-permanent-will-change
- Add project-level require-reduced-motion check (WCAG 2.3.3)
- Add Next.js rules: no-css-link, no-polyfill-script, no-head-import
- Write per-rule summary files to tmp directory instead of single JSON
- All effect rules now catch both useEffect and useLayoutEffect
- isHookCall accepts Set<string> for multi-hook matching
- rerenderDependencies checks useMemo/useCallback deps too
- noArrayIndexAsKey catches template literals and toString()
- nextjsNoClientSideRedirect uses walkAst and detects window.location
- nextjsInlineScriptMissingId catches children-based inline scripts
- noLargeAnimatedBlur checks backdropFilter
- Remove general lint rules (typescript/*, import/*, js-*) to focus on React/UI

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-16 02:22:44 -08:00
Aiden Bai 327c076e4f move website to packages/website 2026-02-16 00:49:51 -08:00
Aiden Bai c3ba00b7c6 fix 2026-02-16 00:47:36 -08:00
Aiden Bai fd0f319df7 fix 2026-02-15 18:32:11 -08:00
Aiden Bai 680e7c4086 fix 2026-02-15 18:29:26 -08:00
Aiden Bai eddd826a25 init 2026-02-15 18:19:18 -08:00
Aiden Bai a8770b7a10 add CLI scaffolding with oxlint integration
Scaffolds the react-doctor CLI with project discovery, oxlint spawning,
and categorized diagnostic output. Bundles 36 rules across 5 plugins
(react, jsx-a11y, react-perf, import, typescript).

Generated with [Ami](https://ami.dev)
Co-Authored-By: Ami <noreply@ami.dev>
2026-02-15 18:09:23 -08:00
Aiden Bai c9b5a3820e 0.0.1 2026-02-13 04:09:48 -08:00
Aiden Bai f50426b5ad init 2026-02-13 04:08:01 -08:00