Insights · Oct 21, 2026 · 4 min read

The boring stack behind our own SaaS

How we built AgencyPilotHQ with proven pieces everywhere, so the energy went into the product instead of the plumbing.

THE BORING STACKBehind our own SaaS SELLWRIGHT

AgencyPilotHQ is the platform we run client work on: clients, projects, a deal pipeline, invoices, proposals, e-signature contracts and AI tools in one place. Here is the stack, and why it is deliberately unexciting.

The application

Next.js App Router with React, TypeScript and Tailwind. Server actions and route handlers keep the data logic close to the pages that use it.

Data and accounts

Supabase Auth and Postgres, with Prisma for the schema and migrations. Every query is scoped per agency, so tenants never see each other’s data. That one rule shaped the whole data layer.

Billing and documents

Stripe subscriptions kept in sync with webhooks, React-PDF for invoices and contracts, and transactional email for the moments that matter.

AI where it helps

The AI tools run on the Claude and OpenAI APIs and are scoped to specific jobs, like drafting a proposal from a brief. Narrow tools beat a general chatbot for real work.

The rule for MVPs

Use boring, proven pieces everywhere you can. Every novel choice is a choice you will have to debug at 2 a.m. Save the novelty for the part customers pay for.

Next step

Ready for a website that sells?

Book a short call. We will look at your current site, agree what matters most and send a written scope with a fixed quote.

Book a callOr write to hello@sellwrightstudio.com