Site Statique Next.js
Quand utiliser
Utilisez pour une landing page, un site institutionnel, une page de campagne, un portfolio ou un blog. Le résultat est uniquement front-end, exporté en HTML/CSS/JS et publié sur Cloudflare Pages.
N'utilisez pas lorsqu'il y a connexion, inscription, base de données, panneau d'administration, facturation, upload ou API propre. Dans ces cas, utilisez la compétence sistema-fullstack.
Créer un projet
- Confirmez le nom, le domaine final, l'objectif de la page et s'il existe un formulaire de contact.
- Utilisez le dépôt de site statique :
git clone https://github.com/guibean/nextjs-template.git <slug>
cd <slug>
git remote remove origin
git remote add origin https://github.com/guibean/<slug>.git
- Créez
.env.localà partir de.env.exampleet renseignezNEXT_PUBLIC_SITE_URL, le nom, l'auteur et l'e-mail. - Lancez
pnpm install,pnpm lint,pnpm typechecketpnpm build. - Alors seulement, modifiez le contenu.
Règles
- N'ajoutez aucune dépendance back-end.
- Installez les composants shadcn à la demande :
pnpm exec shadcn add dialog
pnpm exec shadcn add @aceternity/spotlight
- Pour les blocs Aceternity, vérifiez la licence et installez
motionseulement si le composant l'exige. - Maintenez un seul
h1par page et la hiérarchie des titres. - Chaque nouvelle page a besoin de
createMetadata, d'une entrée dans le sitemap et d'un lien navigable. - Utilisez
next/imageavecsizeset des images traitées parpnpm images. - N'utilisez pas
output: "server", Server Actions ou API Routes de Next dans ce profil. - Formulaire : conservez Turnstile +
functions/api/contact.ts+ Resend.
Checklist avant livraison
Lisez references/seo-checklist.md et confirmez :
- metadata, canonical, Open Graph et robots
- le sitemap inclut toutes les pages publiques
llms.txtmis à jour- images dans
assets/images/etpublic/images/générées - un
h1, contraste, focus visible et navigation au clavier - liens externes avec
relapproprié pnpm lint,pnpm typecheck,pnpm buildpassent- Lighthouse ≥ 95 dans les quatre catégories
- confidentialité mise à jour s'il y a un formulaire/analytics
Déploiement Cloudflare Pages
- Build command :
pnpm build - Output directory :
out - Node : 24
- Variables publiques dans le build et secrets dans les Functions
- Configurez le domaine dans
NEXT_PUBLIC_SITE_URL,TURNSTILE_HOSTNAMEetCONTACT_ALLOWED_ORIGIN