Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

React Review: errors & warnings on default branch

オープン
#2 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
45/100
issue の種類
リファクタリング
明瞭さ
おおむね明確
活発さ
静か
技術スタック
nextjs, react, typescript

調査の方向性

Start by reviewing the referenced locations in apps/website/package.json, apps/demo/src/app.tsx, apps/website/app/claude-spinner.tsx, and apps/website/app/page.tsx, then rerun the React Review diagnostics. Done means the reduced-motion, accessibility, metadata, motion-loading, state-management, and array-key diagnostics listed here are addressed and no longer reported.

索引モデルが issue の本文から書いたものです。

説明

Score: 95/100 · 1 error · 10 warnings

Copy as prompt
Fix the following React Review diagnostics in my codebase.

## Errors (1)

1. [error] require-reduced-motion — apps/website/package.json:0
   Project uses a motion library but has no prefers-reduced-motion handling — required for accessibility (WCAG 2.3.3)

## Warnings (10)

2. [warning] no-array-index-as-key — apps/demo/src/app.tsx:96
   Array index "index" used as key — causes bugs when list is reordered or filtered

3. [warning] no-array-index-as-key — apps/website/app/claude-spinner.tsx:38
   Array index "index" used as key — causes bugs when list is reordered or filtered

4. [warning] click-events-have-key-events — apps/website/app/page.tsx:579
   Enforce a clickable non-interactive element has at least one keyboard event listener.

5. [warning] click-events-have-key-events — apps/website/app/page.tsx:759
   Enforce a clickable non-interactive element has at least one keyboard event listener.

6. [warning] no-static-element-interactions — apps/website/app/page.tsx:579
   Static HTML elements with event handlers require a role.

7. [warning] no-static-element-interactions — apps/website/app/page.tsx:759
   Static HTML elements with event handlers require a role.

8. [warning] nextjs-missing-metadata — apps/website/app/page.tsx:6
   Page without metadata or generateMetadata export — hurts SEO

9. [warning] use-lazy-motion — apps/website/app/page.tsx:9
   Import "m" with LazyMotion instead of "motion" — saves ~30kb in bundle size

10. [warning] no-cascading-set-state — apps/website/app/page.tsx:196
   39 setState calls in a single useEffect — consider using useReducer or deriving state

11. [warning] no-array-index-as-key — apps/website/app/page.tsx:758
   Array index "index" used as key — causes bugs when list is reordered or filtered

❌ 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/website/package.json:0


⚠️ Warnings (10)

no-array-index-as-key

Array index "index" used as key — causes bugs when list is reordered or filtered

Use a stable unique identifier: key={item.id} or key={item.slug} — index keys break on reorder/filter

apps/demo/src/app.tsx:96
apps/website/app/claude-spinner.tsx:38
apps/website/app/page.tsx:758

click-events-have-key-events

Enforce a clickable non-interactive element has at least one keyboard event listener.

Visible, non-interactive elements with click handlers must have one of keyup, keydown, or keypress listener.

apps/website/app/page.tsx:579
apps/website/app/page.tsx:759

no-static-element-interactions

Static HTML elements with event handlers require a role.

Add a role attribute to this element, or use a semantic HTML element instead.

apps/website/app/page.tsx:579
apps/website/app/page.tsx:759

nextjs-missing-metadata

Page without metadata or generateMetadata export — hurts SEO

Add export const metadata = { title: '...', description: '...' } or export async function generateMetadata()

apps/website/app/page.tsx:6

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/website/app/page.tsx:9

no-cascading-set-state

39 setState calls in a single useEffect — consider using useReducer or deriving state

Combine into useReducer: const [state, dispatch] = useReducer(reducer, initialState)

apps/website/app/page.tsx:196


Last scored 2026-05-13T07:59:45.910Z. Maintained by React Review.

主要言語
TypeScript
スター
352
フォーク
23
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

millionco/debug-agent のほかの issue

millionco/debug-agent の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。