Why Convention-First Matters
An opinionated take on why monorepo templates should make decisions for you, not ask you to make them.
Engineering notes, architecture deep dives, and release announcements. Opinionated takes on building a convention-first stack you can ship.
Welcome to ShockStack — a convention-first monorepo template.
Chronological — newest first.
An opinionated take on why monorepo templates should make decisions for you, not ask you to make them.
How a single color value flows from a JSON token through Style Dictionary into CSS variables, Tailwind utilities, and TypeScript constants.
When to use Astro components for static content and Vue islands for interactivity — and how hydration strategies affect performance.
The practical differences between Tailwind 3 and 4 — new Vite plugin, CSS-first config, @theme blocks, and how ShockStack uses them.
How ShockStack integrates Better Auth for server-side sessions, the Drizzle adapter pattern, protected routes, and client-side auth.
How .NET Aspire orchestrates Postgres, the API, and the Astro frontend with a single command — and why it beats docker-compose for dev.
Scroll-driven animations, enter transitions, and discrete display changes — all in CSS, with no JavaScript and full accessibility.