← スキル一覧に戻る

nextjs-anti-patterns
by kensleDev
⭐ 0🍴 0📅 2026年1月16日
SKILL.md
name: nextjs-anti-patterns
IMPORTANT: Keep description on ONE line for Claude Code compatibility
prettier-ignore
description: Common Next.js anti-patterns: useEffect misuse (data fetch, browser detect), useState for server data, Pages Router patterns, serial await, over-using 'use client'. allowed-tools: Read, Write, Edit, Glob, Grep, Bash
Next.js Anti-Patterns
Quick Start
| Anti-Pattern | Solution |
|---|---|
| useEffect for data fetch | Server Component async fetch |
| useEffect for browser detect | Direct detection in body |
| useState for server data | Server Component (no state) |
| Serial await | Promise.all() or Suspense |
| 'use client' everywhere | Only for hooks/events |
// ❌ WRONG
useEffect(() => {
fetch('/api/posts').then(setPosts);
}, []);
// ✅ CORRECT
export default async function Posts() {
const posts = await fetch('https://api.example.com/posts').then(r => r.json());
return <ul>{posts.map(p => <li key={p.id}>{p.title}</li>)}</ul>;
}
Reference Files
- useeffect-misuse.md - Browser detection, data fetch, URL detection anti-patterns
- useState-misuse.md - Server data, derived values
- pages-router-anti-patterns.md - getServerSideProps, getStaticProps, next/head
- performance-anti-patterns.md - Serial await, over-using 'use client'
- navigation-anti-patterns.md - window.location, useRouter in Server Components
- when-client-appropriate.md - When Client Components are correct
Notes
- Default to Server Components - add 'use client' only when needed
- Never use useEffect for data fetching - use async Server Components
- Last verified: 2025-01-11
スコア
総合スコア
40/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です