next-best-practices

Next.js Best Practices - Dateikonventionen, RSC-Grenzen, Datenmuster, asynchrone APIs, Metadaten, Fehlerbehandlung, Routen-Handler, Bild-/Schriftoptimierung,…

npx skills add https://github.com/sanity-io/next-sanity --skill next-best-practices

Next.js Best Practices

Apply these rules when writing or reviewing Next.js code.

File Conventions

See file-conventions.md for:

  • Project structure and special files
  • Route segments (dynamic, catch-all, groups)
  • Parallel and intercepting routes
  • Middleware rename in v16 (middleware → proxy)

RSC Boundaries

Detect invalid React Server Component patterns.

See 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 for:

  • Async params and searchParams
  • Async cookies() and headers()
  • Migration codemod

Runtime Selection

See runtime-selection.md for:

  • Default to Node.js runtime
  • When Edge runtime is appropriate

Directives

See directives.md for:

  • 'use client', 'use server' (React)
  • 'use cache' (Next.js)

Functions

See 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 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 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 for:

  • route.ts basics
  • GET handler conflicts with page.tsx
  • Environment behavior (no React DOM)
  • When to use vs Server Actions

Metadata & OG Images

See metadata.md for:

  • Static and dynamic metadata
  • generateMetadata function
  • OG image generation with next/og
  • File-based metadata conventions

Image Optimization

See image.md for:

  • Always use next/image over <img>
  • Remote images configuration
  • Responsive sizes attribute
  • Blur placeholders
  • Priority loading for LCP

Font Optimization

See font.md for:

  • next/font setup
  • Google Fonts, local fonts
  • Tailwind CSS integration
  • Preloading subsets

Bundling

See bundling.md for:

  • Server-incompatible packages
  • CSS imports (not link tags)
  • Polyfills (already included)
  • ESM/CommonJS issues
  • Bundle analysis

Scripts

See scripts.md for:

  • next/script vs native script tags
  • Inline scripts need id
  • Loading strategies
  • Google Analytics with @next/third-parties

Hydration Errors

See hydration-error.md for:

  • Common causes (browser APIs, dates, invalid HTML)
  • Debugging with error overlay
  • Fixes for each cause

Suspense Boundaries

See suspense-boundaries.md for:

  • CSR bailout with useSearchParams and usePathname
  • Which hooks require Suspense boundaries

Parallel & Intercepting Routes

See parallel-routes.md for:

  • Modal patterns with @slot and (.) interceptors
  • default.tsx for fallbacks
  • Closing modals correctly with router.back()

Self-Hosting

See self-hosting.md for:

  • output: 'standalone' for Docker
  • Cache handlers for multi-instance ISR
  • What works vs needs extra setup

Debug Tricks

See debug-tricks.md for:

  • MCP endpoint for AI-assisted debugging
  • Rebuild specific routes with --debug-build-paths

Mehr Skills von sanity-io

sanity-migration
sanity-io
Plant, implementiert und überprüft Migrationen von anderen CMS- und Contentsystemen nach Sanity. Verwenden bei Migration oder Replatforming zu Sanity von AEM, Adobe Experience Manager, Contentful, Strapi, Webflow, WordPress, Payload, Drupal, Markdown/MDX/Frontmatter-Dateien, WXR/XML-Exporten, CMS-APIs, Datenbank-Dumps, statischem HTML oder beim Entwerfen von Extraktions-, Transformations-, Portable-Text-Konvertierungs-, Asset-Migrations-, Redirect-, Validierungs- und Cutover-Workflows.
officialdevelopmentdatabase
create-agent-with-sanity-context
sanity-io
Erstelle KI-Agenten mit strukturiertem Zugriff auf Sanity-Inhalte über den Agent Context. Verwende dies beim Einrichten eines Sanity-gestützten Chatbots oder beim Verbinden eines KI-Assistenten mit Sanity…
official
dial-your-context
sanity-io
Interaktive Sitzung zur Erstellung von Inhalten für das Instructions-Feld eines Sanity Agent Context MCP. Verwenden Sie diese Fähigkeit, wenn Benutzer die Optimierung des Agentenkontexts erwähnen, Verbesserung…
official
optimize-agent-prompt
sanity-io
Optimieren Sie Ihren Sanity Agent Context Agent durch geführte Konversation. Wandelt Erkundungsdaten in produktionsreife Anweisungen um und erstellt einen System-Prompt…
official
shape-your-agent
sanity-io
Interaktive Sitzung zur Erstellung eines System-Prompts für einen KI-Agenten, der von Sanity Agent Context MCP betrieben wird. Verwenden Sie diese Fähigkeit, wenn Benutzer die Persönlichkeit des Agenten definieren möchten,…
official
content-experimentation-best-practices
sanity-io
Strukturierte Anleitung für die Konzeption, Durchführung und Analyse von Content-Experimenten zur Verbesserung von Conversion und Engagement. Behandelt Hypothesen-Frameworks, Metrikauswahl, Stichprobengrößenberechnung und statistische Signifikanztests bei A/B- und multivariaten Experimenten. Enthält detaillierte Ressourcen zu p-Werten, Konfidenzintervallen, Power-Analyse und Bayes'schen Methoden zur Ergebnisinterpretation. Bietet CMS-Integrationsmuster für die Verwaltung von Varianten auf Feldebene und die Anbindung externer...
official
content-modeling-best-practices
sanity-io
Strukturierte Content-Modellierungsanleitung für Schema-Design, Wiederverwendbarkeit und Multi-Channel-Auslieferung. Behandelt Kernprinzipien: Behandlung von Inhalten als Daten statt als Seiten, Aufrechterhaltung einzelner Quellen der Wahrheit, Design für zukünftige Kanäle und Optimierung für Redaktionsworkflows. Enthält Entscheidungsrahmen für Referenzen versus eingebettete Objekte, Trennung von Belangen und Content-Wiederverwendungsmuster. Bietet Taxonomie- und Klassifikationsanleitung für flache, hierarchische und facettierte Ansätze. Gilt für...
official
portable-text-conversion
sanity-io
Konvertieren Sie HTML- und Markdown-Inhalte in Portable Text-Blöcke für Sanity. Verwenden Sie dies beim Migrieren von Inhalten aus Legacy-CMS, beim Importieren von HTML oder Markdown in Sanity,…
official