Every tool we use, why we chose it, and the honest tradeoffs. If you build with us, you inherit this stack. You should know exactly what that means.
Why we chose it
Runes-based reactivity. Zero virtual DOM. Ships less JS than React. Admin and public site in one repo.
Honest tradeoff
Smaller ecosystem than React, but the DX is meaningfully better.
Why we chose it
Native TypeScript, 10–25× faster installs than npm. Built-in test runner. Same runtime in dev and prod.
Honest tradeoff
Not Node. Most packages work. A handful don't — we've hit zero blockers so far.
Why we chose it
Serverless, HTTP protocol (no long-lived connections), branching for dev. Edge-compatible. $0 to start.
Honest tradeoff
Latency is slightly higher than a co-located Postgres. Acceptable for web; not for sub-ms trading.
Why we chose it
Schema-as-code. Full type inference. Migrations you can read. No magic, no hidden queries.
Honest tradeoff
Less mature than Prisma. The tradeoff is worth it: Drizzle is faster and more predictable.
Why we chose it
In-process Postgres in dev — no Docker, no cloud DB needed. Just clone and run.
Honest tradeoff
No Row-Level Security in dev. We're explicit about tenant IDs in every query instead.
Why we chose it
Plugin-based: 2FA, magic link, social login, admin roles — all type-safe. No vendor lock-in.
Honest tradeoff
Newer than Auth.js / Lucia. Active maintenance, stable API.
Why we chose it
Our own agent engine: hexagonal architecture, LangChain tools, NATS messaging, skill packs, RAG.
Honest tradeoff
Not off-the-shelf. We built it because nothing else gave us the control we needed.
Why we chose it
Tool calling, RAG pipelines, model resilience. Abstracts provider differences cleanly.
Honest tradeoff
Can be over-engineered for simple use cases. We only use what we need.
Why we chose it
Deploy globally in 30 seconds. Sub-50ms page loads worldwide. Free tier is genuinely generous.
Honest tradeoff
Worker limits (CPU time, memory). Fine for our workloads. Very different from a traditional server.
Why we chose it
Real-time everywhere: admin dashboard, agent events, order feeds. No polling. No Firebase.
Honest tradeoff
Requires a NATS server. We run it alongside the app. Self-hosted or managed (Synadia).
Why we chose it
The obvious choice. Checkout Sessions, webhooks, subscriptions. Nothing else comes close.
Honest tradeoff
Fees. 2.9% + 30¢. Worth it for the DX and global coverage.
Why we chose it
Type-safe email with React/Svelte templates. Developer-first. 100 emails/day free.
Honest tradeoff
Newer than SendGrid / Mailgun. We've found it more reliable.
Why we chose it
CSS-first config. Faster builds. The new @theme syntax is elegant. Same utilities, less config overhead.
Honest tradeoff
v4 is recent. A few plugins haven't caught up. Core utilities are stable.
Legacy
FTP deploys, security patch treadmill
This stack
git push → global in 30s, done
Legacy
AI as a plugin, brittle and slow
This stack
AI native — first-class Compass OS agent
Legacy
Polling or cron for "real-time"
This stack
NATS.ws — instant fan-out everywhere
Legacy
Zero type safety (PHP)
This stack
End-to-end TypeScript — zero runtime surprises
Legacy
Multi-tenancy via plugin hell
This stack
First-class DB-native, onboard in 5 minutes
Legacy
Google Analytics (consent walls, GDPR risk)
This stack
Owned analytics — your Postgres, GDPR-native
We deploy the same stack for your business. Your team inherits a clean, modern codebase. No legacy baggage.
See what we build