mherdr
Next.js 16 · React 19 · Tailwind 4

The metarepo and development environment for the mherdr stack.

A server-first App Router foundation with accessible Radix primitives and Tailwind tokens already wired together. Replace this copy and start building.

What is already wired up

Server-first
App Router with React Server Components by default. Client boundaries are opt-in, one directive at a time.
Radix primitives
Accessible, unstyled behaviour — focus traps, roving tabindex, portals — that you style rather than fight.
Tailwind v4
CSS-first config. Design tokens live in globals.css as custom properties, not in a JavaScript config file.
Dark mode
Light, dark and system, resolved before first paint so there is no flash of the wrong theme.
Keyboard and screen reader
Every interactive component ships the ARIA wiring already. Nothing here is a div pretending to be a button.
Turbopack
The default bundler in Next 16. Cold starts and refreshes stay fast as the surface area grows.

The stack

Next.js 16
App Router, Turbopack, typed routes
React 19
Server Components, Actions
TypeScript 5
strict, @/* path alias
Tailwind CSS 4
CSS-first tokens
Radix UI
unstyled accessible primitives
shadcn/ui
component source you own
Lucide
icon set
ESLint 9
flat config, next/core-web-vitals

Questions