The SPM tech stack

One stack, six layers, same in dev and prod. Nothing here is bespoke — every site in the fleet uses the same primitives.

L6 · client

Browser

React server components, streaming, no SPA bundle bloat.

Next 15 · RSC
L5 · framework

Next.js + Tailwind

App Router, shadcn primitives, deletion-first design.

Tailwind 3 · shadcn/ui
L4 · api

Route handlers

Edge-friendly handlers, soft-degrade when integrations are absent.

app/api/*
L3 · auth

Supabase

Magic-link, allow-listed admin, SSR cookies. Middleware env-guarded.

supabase-js · ssr
L2 · data

Mongo · S3

Documents in Mongo, blobs in S3 com27 (eu-west-2). One bucket, fleet-wide.

Atlas · com27
L1 · AI

Claude · Runware · OpenRouter

Reasoning, image, video. Caching at the model layer; cost ledger ticks every run.

claude-opus-4-7