Command palette

Search projects, articles, pages…

Kalvner

Colophon

How this site is built.

Notes on how this site is put together.

Stack

  • Next.js 16 with the App Router and Turbopack
  • Fumadocs UI for documentation chrome (sidebar, search, nav)
  • Fumadocs MDX for content with i18n via parser: "dir"
  • Tailwind v4 with @theme inline blocks
  • shadcn/ui primitives via the @kalvner/kds package
  • Inter (via next/font) across the whole interface and Geist Mono for code
  • Accessibility: WCAG 2.2 AA target
  • Vercel for deploys

Theming

One --seed variable drives the semantic tokens via color-mix() in OKLCH. Both modes mix the same color with a neutral gray anchor, which keeps dark mode delicate instead of bathed in color. Pick any color in the top bar and the whole palette re-derives instantly, without JavaScript.

i18n

Two locales: English (default, hidden in URL) and Portuguese (/pt). Content lives in content/<lang>/, the same tree mirrored.

On this page