Step 3 (group 2 of 3). Moves /parvagues, /parvagues/fiche,
/parvagues/live and /parvagues/live/[slug] to the App Router under a
single segment layout, retiring the old per-page components/parvagues/Layout.js.
- app/parvagues/layout.tsx: the ParVagues sub-shell (Syne via next/font,
parvagues-root/noise-overlay wrapper, footer) inheriting the root shell.
Header scroll-state and the `.reveal` IntersectionObserver are split into
client leaves (ParvaguesHeader, RevealController); the latter re-arms on
client-side navigation via usePathname so reveals keep working between pages.
- Pages become thin server components: data fetch + metadata + segment config
(revalidate=60 on /parvagues and /parvagues/live/[slug] preserved;
getStaticPaths -> generateStaticParams; per-page <title> -> metadata).
- /parvagues/live redirect: client useRouter.replace -> server redirect().
- /parvagues/live/[slug]: the interactive body (Prism, loupe, countdown,
gallery) extracted to a client component (LiveEvent); the server page does
the fs/data fetch.
- /parvagues/fiche: window.print + <style jsx global> body extracted to a
client component (FicheContent) behind a server metadata wrapper.
- Marked the page-rendered feature components 'use client'
(TourTimeline, MusicSection, VideoSection, BookingForm); Hero/BioSection/
AsSeenAt stay server.
- Dropped og:type="music.musician" (not in Next's typed Metadata enum; it
threw at prerender) — inherits the root "website" default; see note for Phase 2.
Build green; route-smoke 14/14. Only /cosmicfest remains on the Pages Router.
Co-Authored-By:
Claude Opus 4.8 (1M context) <noreply@anthropic.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| cosmicfest | Loading commit data... | |
| parvagues | Loading commit data... | |
| Avatar.js | Loading commit data... | |
| Button.js | Loading commit data... | |
| Button.module.css | Loading commit data... | |
| GlitchText.js | Loading commit data... | |
| HoverTooltip.js | Loading commit data... | |
| ImageGallery.js | Loading commit data... | |
| ParVaguesFooter.js | Loading commit data... | |
| ParVaguesHeader.js | Loading commit data... | |
| date.js | Loading commit data... | |
| hydra-view.js | Loading commit data... | |
| layout.js | Loading commit data... | |
| layout.module.css | Loading commit data... |