Services/01 · Web development

Web
development.

Type-safe, fast, accessible web applications. Dashboards, marketing surfaces, internal tools, commerce.

SaaS
shipped
fast ✦
app.acme.co/dashboard
MRR
$48.2k
USERS
2,481
CHURN
2.1%
REVENUE / 30D
Capabilities

What we build
on the web.

We focus on the kinds of projects where engineering quality compounds: anything users live in for hours, anything regulators inspect, anything that has to scale.

01

SaaS & product engineering

Multi-tenant data models, billing, RBAC, audit logs, admin tools. We've built the boring scaffolding so many times we have it as a kit.


Next.jstRPCPrismaStripeClerkPostgres
02

Marketing & brand sites

Static-first, CMS-backed, fully indexable, Lighthouse 95+. We work directly from your designer's Figma or bring one of our own.


AstroSanityContentfulTailwindVercel
03

Internal & ops tools

Custom admin panels for ops, support, and analytics teams. Built once properly so you stop paying the Retool-per-seat tax.


RemixDrizzleRadixRechartsSSO
04

Commerce & storefront

Headless storefronts on Shopify, commercetools, or Medusa. Custom checkouts, subscription flows, payment routing.


Shopify HydrogenMedusaStripeAlgolia
Engineering principles

Six rules we
don't bend.

01 · Type-safe end to end

From database to UI, with shared types. Caught at compile time, not at 2am.

02 · Accessible by default

WCAG 2.2 AA from sprint one. Keyboard, screen reader, reduced-motion. Table stakes.

03 · Tested where it matters

Pragmatic test pyramid: unit on logic, integration on flows, E2E on critical paths.

04 · Performance budgets

LCP < 1.5s, INP < 200ms, CLS < 0.05. Measured per-route in CI.

05 · Sensible defaults

Boring tools, mainstream stack, copious comments. Your future maintainer will thank us.

06 · No JavaScript zealotry

Server-render when it fits, ship JS when it earns its bytes. Page weight is a feature.

Frequent questions

Things people
ask.

How long does a typical web build take?+
A discovery is two weeks. A typical SaaS or product build is 8–24 weeks of build time after that. Marketing sites are usually 4–8 weeks.
Do you work in our existing repo?+
Yes. We open PRs against your repository from day one, and review goes through your normal process. We can also start a greenfield repo and hand it over at the end.
Will you use the framework we already have?+
Almost always. We're polyglot. If you're already on Rails, Django, Laravel, or .NET, we'll keep the backend there and meet the frontend in TypeScript.
What happens after launch?+
We stay on-call for 30 days post-deploy at no extra cost. After that, an optional monthly retainer covers ongoing iteration, observability, and emergencies.
Do you also do design?+
We do product design when needed. For brand and marketing surfaces we partner with a small handful of design studios we've worked with for years.

Talk to a real
engineer.

Your first call is with the engineer who'd be doing the work — not a salesperson.

Start a project