Skip to content

Work / Trunk / Wiki / Decisions

2026-07-23-nextjs

Decisioncanonicalverified 2026-10-04

DECISION.2026-07-23.NEXTJS

Next.js 16 (App Router)

Decision

Next.js 16 App Router for both website and workspace. Route Handlers as the API surface. Server Components for reads, Server Actions and tRPC for writes.

Why

  • One codebase serves marketing (SEO) and app (interactive).
  • Vercel scale-to-zero → cheap for idle tenants.
  • Tailwind 4 + Server Components composes cleanly with our design surface (dogfoodable primitives).

Rejected alternatives.

  • Rails + Hotwire — great SSR, wrong for the canvas-heavy Design/Journey surfaces.
  • Remix — merged into React Router; less deployment optionality.
  • Elixir + LiveView — best runtime, wrong hiring pool.

Impact

Status

Accepted 2026-07-23, with delta D-0002. The implementation this chose was removed from the repository on 2026-08-12, when it became design-only. The decision has not been revisited since.

Sources

  • The memory note decision-nextjs, written 2026-07-23 and moved here on 2026-10-04. The text is the note's own; only the headings changed.