Skip to content

feat(site): design-system redesign + curated docs portal

Jérôme Revillard requested to merge feat/site-design-system-docs into main

What

Redesigns the GENIE.AI docs site to follow the project design system + expands the docs portal (17 docs, 7 sections), then pivots docs to be curated directly in site/content/.

Builds on !214 (merged) (the initial Hugo+Docsy site, live). Spec: docs/superpowers/specs/2026-06-30-site-design-system-docs-design.md. Local-dev guide: .claude/rules/SITE-LOCAL-DEV.md.

Design-system theming

  • OKLch tokens (_tokens.scss) for the visible identity + hex for Bootstrap's $primary/$secondary (required — BS mix() rejects oklch; same colors, two representations).
  • Self-hosted Inter + JetBrains Mono (sovereign, no CDN).
  • Real GENIE.AI logo (navbar + favicon + apple-touch).
  • Component restyle (_custom.scss): navbar, sidebar, buttons, cards, code, tables, inputs, badges.
  • Dark mode via Bootstrap 5.3 data-bs-theme, bridged to the DS tokens (--bs-body-* mappings) — fixes the broken light theme.
  • WCAG AA verified (body 16–17:1, code 10.9:1).

Landing redesign ("sovereign specification")

Full-bleed hero image ("Empowerment through Intelligence and Equity" — ITU tagline), Why-GENIE value grid (6 civic props), doc entry links, credentials strip. Built on DS tokens; hero always-dark over the image (white text, ~10:1 contrast).

Docs portal

  • 17 reference docs across 7 sections (Core / Frontend / Backend / Mobile / Architecture / Deployment / Configuration), mirroring docs/index.md.
  • Section landings + portal landing (cards, reader path).
  • Curated directly in site/content/en/docs/ (committed, real front matter + correct links) — no build-time copy.

CI

pages: job builds + publishes on main only (no MR build-check — verify locally per SITE-LOCAL-DEV.md).

Verification

Per-task code-reviewed (SDD), final whole-branch review, + visual checks via Playwright (light + dark). Build clean: 29 pages.

Notes

  • Squash-merge enabled.
  • Follow-ups (deferred): pin CI image to a tag; artifacts.expire_in; i18n stub (ES).

Merge request reports

Loading