feat(site): port stitch design system + seed-ready content model
Some checks failed
ci/woodpecker/push/web Pipeline failed
ci/woodpecker/pr/web Pipeline failed

Ports the "Technical Editorial" design sample into real TSX wired to
Payload globals/collections. Home/About/Projects (list+detail)/Contact
pages render against Payload data. Expands schemas (Home principles,
About timeline/skills/gear, Contact channels) to cover the full design
surface. Adds seed script that populates realistic AI-drafted content
for first boot. Defers writing/resume routes per scope cut.

- Design tokens: Material-3 palette + Space Grotesk/Inter typography
  scale + dot-grid + glassmorphism utilities
- Shared layout: Nav, Footer, StatusTerminal, GridOverlay, Button,
  TechChip in src/components/site
- Schemas: expand 5 globals + 6 collections; add auto-slug hook
- Seed: scripts/seed.ts — idempotent upsert for media, categories,
  6 projects, 8 gear, 3 posts, 5 globals; generates placeholder admin
- Contact: form + /api/contact route with optional Turnstile verify
- Rename TURNSTILE_SITE_KEY -> NEXT_PUBLIC_TURNSTILE_SITE_KEY (client)
- Remove dead src/components/SiteHeader|SiteFooter|StatusTerminal
This commit is contained in:
2026-04-14 18:57:53 -05:00
parent 6db28bc81f
commit 486bbc8cf8
42 changed files with 4184 additions and 397 deletions

14
pnpm-lock.yaml generated
View File

@@ -13,6 +13,9 @@ importers:
.:
dependencies:
'@marsidev/react-turnstile':
specifier: ^1.5.0
version: 1.5.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
'@payloadcms/db-postgres':
specifier: ^3.50.0
version: 3.82.1(payload@3.82.1(graphql@16.13.2)(typescript@5.9.3))
@@ -1046,6 +1049,12 @@ packages:
peerDependencies:
yjs: '>=13.5.22'
'@marsidev/react-turnstile@1.5.0':
resolution: {integrity: sha512-Ph6mcj8u9WBDsBO7s9jKPsyRDz1sBPBJwrk+Ngx09vFInvKsQ6U6kW5amEcGq4dHOreB6DgFrOJk7/fy318YlQ==}
peerDependencies:
react: ^17.0.2 || ^18.0.0 || ^19.0
react-dom: ^17.0.2 || ^18.0.0 || ^19.0
'@monaco-editor/loader@1.7.0':
resolution: {integrity: sha512-gIwR1HrJrrx+vfyOhYmCZ0/JcWqG5kbfG7+d3f/C1LXk2EvzAbHSg3MQ5lO2sMlo9izoAZ04shohfKLVT6crVA==}
@@ -4478,6 +4487,11 @@ snapshots:
lexical: 0.41.0
yjs: 13.6.30
'@marsidev/react-turnstile@1.5.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
react: 19.2.0
react-dom: 19.2.0(react@19.2.0)
'@monaco-editor/loader@1.7.0':
dependencies:
state-local: 1.0.7