karbe/src/app
Claude Integration 68f37f554f feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3)
Plugin content-pages :
- Modèle Prisma ContentPage (slug PK, title, body markdown, category, published)
- lib/content-pages.ts : helpers upsert/get/list/unpublish
- lib/markdown.ts : mini-renderer markdown server-side sans deps externe
  (h1-h3, paragraphes, gras/italique, liens, listes ul/ol, hr, blockquote,
  échappement HTML)
- ContentPageRenderer server component, applique le theme Guyane (font-serif)
- 5 pages seedées : /a-propos, /faq, /comment-ca-marche,
  /pour-comites-entreprise, /devenir-loueur
- Routes publiques + force-dynamic + guard requirePluginOr404

Plugin legal-pages :
- Réutilise le même modèle ContentPage, catégorie 'legal'
- 3 pages seedées : /cgv, /mentions-legales, /politique-de-confidentialite
  (contenu de base, à valider par avocat avant prod réelle)

Admin :
- /admin/content-pages : table par catégorie, statut publié/dépublié
- /admin/content-pages/[slug] : éditeur markdown + toggle publié
- PATCH /api/admin/content-pages/[slug]

Hooks plugin :
- onEnable seed + republish toutes les pages
- onDisable dépublie toute la catégorie sans la supprimer (preserve les edits)
2026-05-31 10:12:13 +00:00
..
a-propos feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
admin feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
api feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
carbets chore: wire StayConstraints + minStayNights dans carbet-card + search (oubli PR#30) 2026-05-31 08:59:46 +00:00
cgv feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
comment-ca-marche feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
connexion feat(auth): add multi-role NextAuth with role guards 2026-05-29 10:46:54 +00:00
devenir-loueur feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
espace-hote Merge main into feat/owner-carbet-crud (integrate SYS-2 schema + SYS-3 auth) 2026-05-29 21:33:57 +00:00
faq feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
mentions-legales feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
mes-reservations feat(reviews): avis & notes carbet (SYS-8) 2026-05-30 15:08:55 +00:00
politique-de-confidentialite feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
pour-comites-entreprise feat(plugins): content-pages + legal-pages (Phase 4.1 + 4.3) 2026-05-31 10:12:13 +00:00
favicon.ico chore: scaffold Next.js + Prisma + Tailwind 2026-05-29 10:45:59 +00:00
global-error.tsx fix(build): add app global-error fallback for Next 16 prerender 2026-05-30 04:42:21 +00:00
globals.css feat(plugins-visuels): theme-guyane + landing-hero + landing-sections 2026-05-30 23:19:24 +00:00
layout.tsx feat(plugins): seasonality + min-stay (Phase 3.2 + 3.4) 2026-05-31 08:50:26 +00:00
page.tsx feat(plugins-visuels): theme-guyane + landing-hero + landing-sections 2026-05-30 23:19:24 +00:00
robots.ts feat(carbets): public search + carbet detail page (SSR/SEO) 2026-05-29 22:24:25 +00:00
sitemap.ts chore(sitemap): force dynamic + try/catch DB 2026-05-30 23:32:07 +00:00