celeroncoder / celeroncoder/shire
React Review Audit
- Dominant language
- Swift
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
**Score: 96/100** · 1 error · 34 warnings
Copy as prompt
```text
Fix the following React Review diagnostics in my codebase.
## Errors (1)
1. [error] require-reduced-motion — apps/landing/package.json:0
Project uses a motion library but has no prefers-reduced-motion handling — required for accessibility (WCAG 2.3.3)
## Warnings (34)
2. [warning] use-lazy-motion — apps/landing/src/sections/hero.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
3. [warning] design-no-redundant-size-axes — apps/landing/src/sections/hero.tsx:62
w-[600px] h-[600px] → use the shorthand size-[600px] (Tailwind v3.4+)
4. [warning] design-no-em-dash-in-jsx-text — apps/landing/src/sections/hero.tsx:82
Em dash (—) in JSX text reads as model output — replace with comma, colon, semicolon, or parentheses
5. [warning] use-lazy-motion — apps/landing/src/sections/features.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
6. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:89
w-3 h-3 → use the shorthand size-3 (Tailwind v3.4+)
7. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:101
w-2 h-2 → use the shorthand size-2 (Tailwind v3.4+)
8. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:102
w-2 h-2 → use the shorthand size-2 (Tailwind v3.4+)
9. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:103
w-2 h-2 → use the shorthand size-2 (Tailwind v3.4+)
10. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:140
w-12 h-12 → use the shorthand size-12 (Tailwind v3.4+)
11. [warning] design-no-redundant-size-axes — apps/landing/src/sections/features.tsx:141
w-5 h-5 → use the shorthand size-5 (Tailwind v3.4+)
12. [warning] anchor-is-valid — apps/landing/src/sections/footer.tsx:12
Use of incorrect `href` for the 'a' element.
13. [warning] anchor-is-valid — apps/landing/src/sections/footer.tsx:18
Use of incorrect `href` for the 'a' element.
14. [warning] anchor-is-valid — apps/landing/src/sections/footer.tsx:24
Use of incorrect `href` for the 'a' element.
15. [warning] use-lazy-motion — apps/landing/src/sections/waitlist.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
16. [warning] design-no-redundant-size-axes — apps/landing/src/sections/waitlist.tsx:47
w-[400px] h-[400px] → use the shorthand size-[400px] (Tailwind v3.4+)
17. [warning] design-no-redundant-size-axes — apps/landing/src/sections/waitlist.tsx:63
w-5 h-5 → use the shorthand size-5 (Tailwind v3.4+)
18. [warning] design-no-redundant-size-axes — apps/landing/src/sections/waitlist.tsx:72
w-5 h-5 → use the shorthand size-5 (Tailwind v3.4+)
19. [warning] use-lazy-motion — apps/landing/src/sections/tools.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
20. [warning] design-no-em-dash-in-jsx-text — apps/landing/src/sections/tools.tsx:77
Em dash (—) in JSX text reads as model output — replace with comma, colon, semicolon, or parentheses
21. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:84
w-1.5 h-1.5 → use the shorthand size-1.5 (Tailwind v3.4+)
22. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:88
w-1.5 h-1.5 → use the shorthand size-1.5 (Tailwind v3.4+)
23. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:92
w-1.5 h-1.5 → use the shorthand size-1.5 (Tailwind v3.4+)
24. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:96
w-1.5 h-1.5 → use the shorthand size-1.5 (Tailwind v3.4+)
25. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:112
w-3 h-3 → use the shorthand size-3 (Tailwind v3.4+)
26. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:113
w-3 h-3 → use the shorthand size-3 (Tailwind v3.4+)
27. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:114
w-3 h-3 → use the shorthand size-3 (Tailwind v3.4+)
28. [warning] design-no-redundant-size-axes — apps/landing/src/sections/tools.tsx:137
w-4 h-4 → use the shorthand size-4 (Tailwind v3.4+)
29. [warning] design-no-em-dash-in-jsx-text — apps/landing/src/sections/tools.tsx:156
Em dash (—) in JSX text reads as model output — replace with comma, colon, semicolon, or parentheses
30. [warning] anchor-is-valid — apps/landing/src/sections/navbar.tsx:26
Use of incorrect `href` for the 'a' element.
31. [warning] use-lazy-motion — apps/landing/src/sections/navbar.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
32. [warning] design-no-redundant-size-axes — apps/landing/src/sections/navbar.tsx:37
w-4 h-4 → use the shorthand size-4 (Tailwind v3.4+)
33. [warning] use-lazy-motion — apps/landing/src/sections/how-it-works.tsx:2
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
34. [warning] design-no-redundant-size-axes — apps/landing/src/sections/how-it-works.tsx:66
w-14 h-14 → use the shorthand size-14 (Tailwind v3.4+)
35. [warning] design-no-redundant-size-axes — apps/landing/src/sections/how-it-works.tsx:67
w-6 h-6 → use the shorthand size-6 (Tailwind v3.4+)
```
---
### ❌ Errors (1)
**`require-reduced-motion`**
Project uses a motion library but has no prefers-reduced-motion handling — required for accessibility (WCAG 2.3.3)
> Add `useReducedMotion()` from your animation library, or a `@media (prefers-reduced-motion: reduce)` CSS query
[`apps/landing/package.json:0`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/package.json#L0)
---
### ⚠️ Warnings (34)
**`design-no-redundant-size-axes`**
w-[600px] h-[600px] → use the shorthand size-[600px] (Tailwind v3.4+)
> Collapse `w-N h-N` to `size-N` (Tailwind v3.4+) when both axes match
[`apps/landing/src/sections/hero.tsx:62`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/hero.tsx#L62)
[`apps/landing/src/sections/features.tsx:89`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L89)
[`apps/landing/src/sections/features.tsx:101`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L101)
[`apps/landing/src/sections/features.tsx:102`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L102)
[`apps/landing/src/sections/features.tsx:103`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L103)
[`apps/landing/src/sections/features.tsx:140`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L140)
[`apps/landing/src/sections/features.tsx:141`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L141)
[`apps/landing/src/sections/waitlist.tsx:47`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/waitlist.tsx#L47)
[`apps/landing/src/sections/waitlist.tsx:63`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/waitlist.tsx#L63)
[`apps/landing/src/sections/waitlist.tsx:72`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/waitlist.tsx#L72)
[`apps/landing/src/sections/tools.tsx:84`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L84)
[`apps/landing/src/sections/tools.tsx:88`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L88)
[`apps/landing/src/sections/tools.tsx:92`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L92)
[`apps/landing/src/sections/tools.tsx:96`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L96)
[`apps/landing/src/sections/tools.tsx:112`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L112)
[`apps/landing/src/sections/tools.tsx:113`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L113)
[`apps/landing/src/sections/tools.tsx:114`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L114)
[`apps/landing/src/sections/tools.tsx:137`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L137)
[`apps/landing/src/sections/navbar.tsx:37`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/navbar.tsx#L37)
[`apps/landing/src/sections/how-it-works.tsx:66`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/how-it-works.tsx#L66)
[`apps/landing/src/sections/how-it-works.tsx:67`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/how-it-works.tsx#L67)
**`use-lazy-motion`**
Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size
> Use `import { LazyMotion, m } from "framer-motion"` with `domAnimation` features — saves ~30kb
[`apps/landing/src/sections/hero.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/hero.tsx#L2)
[`apps/landing/src/sections/features.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/features.tsx#L2)
[`apps/landing/src/sections/waitlist.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/waitlist.tsx#L2)
[`apps/landing/src/sections/tools.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L2)
[`apps/landing/src/sections/navbar.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/navbar.tsx#L2)
[`apps/landing/src/sections/how-it-works.tsx:2`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/how-it-works.tsx#L2)
**`anchor-is-valid`**
Use of incorrect `href` for the 'a' element.
> Provide a correct `href` for the `a` element.
[`apps/landing/src/sections/footer.tsx:12`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/footer.tsx#L12)
[`apps/landing/src/sections/footer.tsx:18`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/footer.tsx#L18)
[`apps/landing/src/sections/footer.tsx:24`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/footer.tsx#L24)
[`apps/landing/src/sections/navbar.tsx:26`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/navbar.tsx#L26)
**`design-no-em-dash-in-jsx-text`**
Em dash (—) in JSX text reads as model output — replace with comma, colon, semicolon, or parentheses
> Replace em dashes in JSX text with commas, colons, semicolons, periods, or parentheses — em dashes read as model-output filler
[`apps/landing/src/sections/hero.tsx:82`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/hero.tsx#L82)
[`apps/landing/src/sections/tools.tsx:77`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L77)
[`apps/landing/src/sections/tools.tsx:156`](https://github.com/celeroncoder/shire/blob/a497443b99363de865c99b0af4b5ae124d490560/apps/landing/src/sections/tools.tsx#L156)
---
Last scored May 14, 2026 at 9:39 AM UTC. Maintained by [React Review](https://github.com/millionco/react-review).
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.