AgentSkillsCN

nextjs-expert

精通Next.js框架,擅长App Router、Server Components以及性能优化。在以下场景中使用此技能:(1) 开发Next.js应用,探索App Router的全新特性;(2) 迁移至App Router,充分利用Server Components与Server Actions;(3) 制定渲染策略(SSR/SSG/ISR),优化Next.js应用的性能;(4) 部署至Vercel平台,实现无缝上线;(5) 通过Next.js的高级特性,打造更高效的Web应用。

SKILL.md
--- frontmatter
name: nextjs-expert
description: |-
  Expert Next.js pour App Router, Server Components et optimisation. Utilise ce skill quand: (1) développement d'applications Next.js, (2) migration vers App Router, (3) Server Components et Server Actions, (4) stratégies de rendering (SSR/SSG/ISR), (5) optimisation des performances Next.js, (6) déploiement Vercel.
metadata:
  version: 1.0.0
  status: active

Next.js Expert Skill

Quick Start

bash
# 1. Navigation rapide vers un agent
nextjs-expert/agents/app-router/routing      # Routes et structure
nextjs-expert/agents/data/server-actions     # Mutations avec Server Actions
nextjs-expert/agents/optimization/images     # Optimiser les images

# 2. Exécuter les tests de validation
cd .web-agency/skills/nextjs-expert && npm test

# 3. Questions fréquentes
"Comment créer une route dynamique ?"    → app-router/routing
"Server vs Client Component ?"            → server-components/server-vs-client
"Comment fetcher des données ?"           → data/data-fetching
"Optimiser le LCP ?"                      → optimization/images + fonts
"Déployer sur Vercel ?"                   → deployment/vercel

Position dans l'Architecture

Ce skill est un skill de NIVEAU 3 : COMMENT (implémentation). Il fournit le code et les configurations concrètes pour le développement Next.js.

code
┌─────────────────────────────────────────────────────────────────┐
│  NIVEAU 1 : POURQUOI (direction-technique)                      │
│  → Décisions stratégiques, choix de stack, ADRs                 │
│  → Pourquoi Next.js ? Quelle stratégie de rendu ?               │
├─────────────────────────────────────────────────────────────────┤
│  COORDINATION (lead-dev)                                        │
│  → Coordination opérationnelle, qualité quotidienne             │
│  → Comment organiser le code ? Valider les PRs ?                │
├─────────────────────────────────────────────────────────────────┤
│  NIVEAU 2 : QUOI (web-dev-process)                              │
│  → Process, workflows, checklists, standards                    │
│  → Comment organiser les tests ? Quel workflow ?                │
├─────────────────────────────────────────────────────────────────┤
│  NIVEAU 3 : COMMENT (nextjs-expert) ← CE SKILL                  │
│  → Implémentation, code, configuration                          │
│  → Comment créer ce Server Component ? Configurer le cache ?    │
└─────────────────────────────────────────────────────────────────┘

Philosophie

Ce skill fournit l'implémentation concrète pour le développement Next.js 14+. Il contient :

  • ✅ Du code (React, TypeScript, Server Components...)
  • ✅ Des configurations (next.config.js, middleware...)
  • ✅ Des patterns d'implémentation App Router
  • ✅ Des exemples concrets et prêts à l'emploi

Il ne contient PAS :

  • ❌ Des décisions stratégiques → direction-technique
  • ❌ Des processus de travail → web-dev-process
  • ❌ Du React générique → react-expert
  • ❌ Du CSS/styling générique → frontend-developer

Architecture

code
┌─────────────────────────────────────────────────────────────────────────────┐
│                            frontend-developer                                │
│                         (COMMENT - 33 agents)                               │
│                     Implémentation frontend générique                        │
│                                                                              │
│  frameworks/nextjs-expert → Délégation vers CE SKILL                        │
└─────────────────────────────────────────────────────────────────────────────┘
                                      │
                                      ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│                            nextjs-expert                                     │
│                         (COMMENT - 35 agents)                               │
│                      Implémentation Next.js                                  │
│                                                                              │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │                          7 DOMAINES                                   │   │
│  │                                                                       │   │
│  │  app-router/       server-components/      data/         rendering/  │   │
│  │      (5)                  (5)              (5)              (5)      │   │
│  │                                                                       │   │
│  │  optimization/         deployment/         testing/                  │   │
│  │      (5)                  (5)               (5)                      │   │
│  └─────────────────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────────────────┘

Domaines et Agents (35 agents)

1. app-router/ - App Router (5 agents)

Code et patterns pour le App Router Next.js 14+.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
routingRoutes, segments, groupesCode routes, layouts
layoutsLayouts, templates, loadingCode UI structure
navigationLink, useRouter, redirectsCode navigation
error-handlingerror.tsx, not-found.tsxCode gestion erreurs

2. server-components/ - React Server Components (5 agents)

Implémentation des Server Components et Client Components.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
server-vs-clientChoix SC vs CC, "use client"Code composants
async-componentsComposants async, awaitCode async
streamingSuspense, streaming SSRCode streaming
compositionPatterns de compositionCode patterns

3. data/ - Gestion des Données (5 agents)

Data fetching, mutations et caching.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
data-fetchingfetch, cache côté serveurCode fetching
server-actionsServer Actions, mutationsCode actions
revalidationCache strategies, tags, ISRConfig cache
client-fetchingSWR, React QueryCode client

4. rendering/ - Stratégies de Rendu (5 agents)

SSR, SSG, ISR et rendu dynamique.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
ssr-ssgSSR vs SSG, generateStaticParamsCode rendu
isrISR, revalidation périodiqueConfig ISR
middlewareMiddleware, redirectionsCode middleware
edge-runtimeEdge Functions, configCode Edge

5. optimization/ - Optimisation (5 agents)

Performance et Core Web Vitals.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
imagesnext/image, formats, placeholderCode images
fontsnext/font, loading, subsetsCode fonts
bundle@next/bundle-analyzer, code splitConfig analyse
cachingCache strategies, headersConfig cache

6. deployment/ - Déploiement (5 agents)

Déploiement et configuration production spécifique Next.js.

Note : Différence avec lead-dev/delivery/

  • nextjs-expert/agents/deployment/ = Implémentation technique : Vercel, Docker, CI/CD pour Next.js
  • lead-dev/delivery/ = Processus de release : planification, vérifications, hotfixes, release notes

Exemple : lead-dev/delivery/deployment-check vérifie qu'on est prêt à déployer, puis nextjs-expert/agents/deployment/vercel effectue le déploiement technique.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
vercelDéploiement VercelConfig Vercel
dockerContainerisation, self-hostedDockerfile, compose
environmentVariables d'env, secretsConfig env
ci-cdPipelines GitHub/GitLabWorkflows CI

7. testing/ - Tests (5 agents)

Tests unitaires, intégration et E2E.

AgentResponsabilitéProduit
orchestratorCoordinationRoutage
unit-testingJest, Vitest pour Next.jsCode tests
integration-testingTesting Library + NextCode tests composants
e2e-testingPlaywright pour Next.jsCode tests E2E
mockingMSW, mocks APICode mocks

Total : 35 agents spécialisés

Règles de Routage

Par Type de Question

QuestionDomaine
Routes, layouts, navigation, URLapp-router/
Server/Client Components, streamingserver-components/
Fetch data, mutations, cache, DBdata/
SSR, SSG, ISR, middlewarerendering/
Performance, images, fonts, bundleoptimization/
Deploy, Vercel, Docker, envdeployment/
Tests Next.jstesting/

Par Mots-Clés

code
SI question contient [route, page.tsx, layout.tsx, segment, group]
   → app-router/routing

SI question contient [loading.tsx, error.tsx, not-found.tsx]
   → app-router/error-handling

SI question contient [Server Component, Client Component, "use client"]
   → server-components/server-vs-client

SI question contient [async component, await, Suspense, streaming]
   → server-components/streaming

SI question contient [Server Action, "use server", mutation, form]
   → data/server-actions

SI question contient [fetch, cache, revalidate, revalidatePath, revalidateTag]
   → data/caching

SI question contient [generateStaticParams, static, build time]
   → rendering/static-generation

SI question contient [dynamic, force-dynamic, no-store]
   → rendering/dynamic-rendering

SI question contient [ISR, revalidate: 60, on-demand]
   → rendering/incremental-static

SI question contient [middleware, Edge, NextResponse]
   → rendering/middleware

SI question contient [next/image, Image, placeholder, blur]
   → optimization/image-optimization

SI question contient [next/font, Google Fonts, local fonts]
   → optimization/font-optimization

SI question contient [Vercel, deploy, production]
   → deployment/vercel

SI question contient [Docker, container, standalone]
   → deployment/docker

SI question contient [test, Jest, Playwright, Next.js]
   → testing/

Composition avec Autres Skills

Exemple 1 : Nouvelle page avec data fetching

code
1. direction-technique/architecture
   → Décide : "Page avec ISR, revalidation 1h"

2. nextjs-expert/agents/rendering/incremental-static
   → Implémente : Config ISR

3. nextjs-expert/agents/data/data-fetching
   → Implémente : Fetch avec cache

4. nextjs-expert/agents/server-components/async-components
   → Implémente : Composant async

Exemple 2 : Optimisation performance

code
1. direction-technique/performance
   → Décide : "Optimiser LCP < 2.5s"

2. nextjs-expert/agents/optimization/image-optimization
   → Implémente : next/image optimisé

3. nextjs-expert/agents/optimization/font-optimization
   → Implémente : next/font

4. nextjs-expert/agents/optimization/core-web-vitals
   → Implémente : Autres optimisations

Points d'Escalade

Vers direction-technique

  • Choix de stratégie de rendu globale (full SSR vs hybrid)
  • Architecture micro-frontend avec Next.js
  • Choix entre Pages Router et App Router (migration)
  • Décisions de caching stratégiques

Vers react-expert

  • Patterns React avancés (non spécifiques Next.js)
  • State management global
  • Hooks personnalisés complexes

Vers frontend-developer

  • Styling et CSS (Tailwind, CSS Modules génériques)
  • Accessibilité générale
  • JavaScript/TypeScript générique

Vers l'humain

  • Problèmes de configuration complexes
  • Bugs Next.js non documentés
  • Décisions d'architecture avec trade-offs importants

Skills Associés

SkillNiveauRelation
direction-techniquePOURQUOIDéfinit les décisions stratégiques
lead-devCOORDINATIONValide les PRs, coordonne
frontend-developerCOMMENTDélègue vers ce skill pour Next.js
react-expertCOMMENTPatterns React génériques
web-dev-processQUOIDéfinit les processus

Versions Next.js Supportées

Ce skill est optimisé pour Next.js 14+ avec App Router.

FeatureVersion MinNotes
App Router13.4+Stable depuis 13.4
Server Actions14.0+Stable depuis 14.0
Partial Prerendering14.0+Expérimental
Turbopack14.0+Stable en dev

Tests de Validation

Le skill inclut des tests automatisés pour valider sa structure.

bash
# Exécuter les tests (depuis le dossier du skill)
cd .web-agency/skills/nextjs-expert
npm test

# Mode verbose
npm run test:verbose

# Tests individuels
npm run test:domains
npm run test:agents
npm run test:skill

Les tests vérifient :

  • ✅ Existence de tous les domaines
  • ✅ Présence de tous les agents attendus
  • ✅ Frontmatter YAML valide (name, description)
  • ✅ Structure des agents (sections requises)
  • ✅ Références croisées (escalades)

Intégration CI

Les tests sont automatiquement exécutés via GitHub Actions :

  • Workflow : .github/workflows/nextjs-expert-tests.yml
  • Déclenchement : Push sur main ou PR modifiant .web-agency/skills/nextjs-expert/**
  • Rapport : Commentaire automatique sur la PR avec les résultats
BadgeDescription
✅ PassTous les tests passent
❌ FailAu moins un test échoue
yaml
# Vérifier le status localement avant de push
npm test

Exemples de Workflows End-to-End

Workflow 1 : Développeur crée une nouvelle page avec data

code
1. 🧑‍💻 Développeur demande : "Créer une page produits avec SSG"

2. → nextjs-expert/agents/rendering/ssr-ssg
   Répond : Code generateStaticParams + page.tsx

3. → nextjs-expert/agents/data/data-fetching
   Répond : Code fetch avec cache

4. → nextjs-expert/agents/server-components/async-components
   Répond : Pattern composant async

5. 🧑‍💻 PR créée → lead-dev/code-review/pr-review
   Valide : Structure, patterns, performance

Workflow 2 : Optimisation performance après audit

code
1. 🧑‍💻 Demande : "LCP trop lent, optimiser"

2. → nextjs-expert/agents/optimization/images
   Répond : Config next/image, priority, sizes

3. → nextjs-expert/agents/optimization/fonts
   Répond : next/font avec display: swap

4. → nextjs-expert/agents/optimization/bundle
   Répond : Dynamic imports, analyze bundle

5. → lead-dev/code-review/performance-review
   Valide : Impact Core Web Vitals

Workflow 3 : Implémentation Server Actions

code
1. 🧑‍💻 Demande : "Formulaire de contact avec Server Action"

2. → nextjs-expert/agents/data/server-actions
   Répond : Code "use server", form action

3. → nextjs-expert/agents/data/revalidation
   Répond : revalidatePath après mutation

4. → nextjs-expert/agents/app-router/error-handling
   Répond : Gestion erreurs useFormState

5. → nextjs-expert/agents/testing/integration-testing
   Répond : Tests avec Testing Library

Changelog

v1.0.0

  • Création initiale avec 7 domaines et 35 agents
  • Focus sur App Router et Server Components
  • Positionnement COMMENT dans la hiérarchie
  • Intégration avec frontend-developer
  • Tests de validation inclus