Skip to main content

next-best-practices

Next.js best practices - RSC boundaries, data patterns, async APIs, error handling, route handlers, directives, runtime selection

Aller à l'installation

Informations de source

Dépôt
districtr/districtr-v2
Dernière activité de la source
23 avril 2026 à 21:44
Langue détectée de SKILL.md
anglais
Étoiles
6
Forks
3

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
9 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
next-best-practices
description
Next.js best practices - RSC boundaries, data patterns, async APIs, error handling, route handlers, directives, runtime selection
user-invocable
false
# Next.js Best Practices Apply these rules when writing or reviewing Next.js code. ## Districtr Conventions - Use `React.FC<Props>` syntax for reusable component declarations (pages/layouts use `export default function` as required by Next.js) - Runtime is **Bun** (not Node.js); deployed on **Fly.io** with `output: 'standalone'` - Map pages (`/map/*`) are almost entirely client-side — heavy `'use client'` usage is expected - Static content pages (tags, about, etc.) should be **statically rendered** at build time where possible ## RSC Boundaries Detect invalid React Server Component patterns. See [rsc-boundaries.md](./rsc-boundaries.md) for: - Async client component detection (invalid) - Non-serializable props detection - Server Action exceptions ## Async Patterns Next.js 15+ async API changes. See [async-patterns.md](./async-patterns.md) for: - Async `params` and `searchParams` - Async `cookies()` and `headers()` - Migration codemod ## Runtime Selection See [runtime-selection.md](./runtime-selection.md) for: - Default to Node.js runtime - When Edge runtime is appropriate ## Directives See [directives.md](./directives.md) for: - `'use client'`, `'use server'` (React) - `'use cache'` (Next.js) ## Functions See [functions.md](./functions.md) for: - Navigation hooks: `useRouter`, `usePathname`, `useSearchParams`, `useParams` - Server functions: `cookies`, `headers`, `draftMode`, `after` - Generate functions: `generateStaticParams`, `generateMetadata` ## Error Handling See [error-handling.md](./error-handling.md) for: - `error.tsx`, `global-error.tsx`, `not-found.tsx` - `redirect`, `permanentRedirect`, `notFound` - `forbidden`, `unauthorized` (auth errors) - `unstable_rethrow` for catch blocks ## Data Patterns See [data-patterns.md](./data-patterns.md) for: - Server Components vs Server Actions vs Route Handlers - Avoiding data waterfalls (`Promise.all`, Suspense, preload) - Client component data fetching ## Route Handlers See [route-handlers.md](./route-handlers.md) for: - `route.ts` basics - GET handler conflicts with `page.tsx` - Environment behavior (no React DOM) - When to use vs Server Actions
Voir sur GitHub