Tools we use.
Why we use them.
We're tool-agnostic but opinionated. Every technology earns its place in our stack by solving a real problem better than the alternatives.
Next.js
The framework behind the majority of what we ship. Server rendering, static generation, and hybrid approaches. Chosen per route based on what the data actually needs.
Learn more →React
The component model behind everything we build on the web. Whether it ships inside Next.js, SvelteKit, or a standalone SPA. React is our primary UI layer.
Learn more →SvelteKit
Compiled components, zero virtual DOM overhead, and a framework that stays out of the way. We use SvelteKit for animation-heavy and performance-critical projects.
Learn more →TypeScript
Every project, every file, every function. Full type safety from database schema to UI component. No exceptions.
Learn more →Astro
Zero JavaScript by default. When a site is primarily content and the performance budget is strict, Astro delivers the leanest possible output.
Learn more →Vercel
Every project gets preview environments, automatic CI/CD, and production monitoring from commit one. No DevOps overhead, no excuses.
Learn more →AWS
We use AWS selectively.AI services through Bedrock, file storage on S3, and compute when serverless is not enough. Not everything belongs on the edge.
Learn more →Cloudflare
DNS, CDN, DDoS protection, and edge caching. Every project we ship sits behind Cloudflare as the first line of defense.
Learn more →Node.js
API routes, server-side rendering, build tooling, and backend services. One language across the entire stack.
Learn more →Python
FastAPI services, AI/ML pipelines, voice agents, and data processing. When the work is computation-heavy, Python is where we go.
Learn more →Railway
When the workload needs a long-running process, persistent connections, or a container that stays alive.Railway hosts it.
Learn more →Elixir
When a platform needs to handle thousands of concurrent connections, process events in real time, and never go down. Phoenix, OTP, and the BEAM VM.
Learn more →Sanity
A headless CMS that gives content teams full autonomy. Structured content, real-time collaboration, and an API that fits how we build.
Learn more →Shopify
We use the Shopify Storefront API to build custom shopping experiences, not Shopify themes. The commerce engine stays. The frontend is ours.
Learn more →