
Good Energy
Three years on a heat pump estimate journey — rebranded, re-platformed and moved to Zoho CRM without downtime, and held to WCAG 2.2 Level AA.
The web stack we reach for by default.
Next.js is behind more of our shipped work than any other web framework: customer portals, admin consoles, marketing sites that live or die on Core Web Vitals, and content platforms fed by a headless CMS.
We run Next.js on the App Router with React and TypeScript in strict mode. Where a project needs a CMS we reach for Prismic; where it needs a design system we build on Tailwind and shadcn/ui rather than inventing primitives nobody else will recognise.
Capabilities
NextAuth and Better Auth with OAuth providers, credential flows, role guards and admin shells — the parts every portal needs and nobody wants to rebuild.
Prismic with Slice Machine and generated TypeScript content models, so editors get real components and developers get type safety.
Tailwind CSS with shadcn/ui and Radix primitives, documented in Storybook so the component library survives the handover.
Recharts dashboards, drag-and-drop with dnd-kit, Leaflet mapping and virtualised tables — interfaces that stay responsive under real data volumes.
Algolia integration with publish and unpublish webhooks, search analytics, and dictionary-aware exact matching.
Standalone Docker runtimes onto AWS ECS via CDK, or Vercel where the edge network earns its keep. The framework does not dictate the bill.
The Stack
Not a wish list. Every library below is running in a repository we maintain.
Engineering Practice
Choosing the stack is the easy part. These are the decisions that determine whether the codebase is still maintainable after we hand it over — and they are the same on every Next.js project we run.
Our certificationsTypeScript runs in strict mode with path aliases on every project. No project starts with strict off and a promise to turn it on later.
API clients are generated from the backend OpenAPI schema into a versioned client folder and wrapped in a typed React hook, so backend and frontend cannot silently drift apart.
Our internal scaffolding tooling generates CRUD feature folders to a consistent shape, which means a developer moving between our projects recognises the layout immediately.
Component libraries are documented in Storybook so the design system is inspectable by the client's own team after handover, not just by us.
Linting covers spelling and styles as well as code — cspell and Stylelint alongside ESLint — because review time is better spent on architecture.
Related Work
Energy switching, standards documentation, publisher tooling and subscription commerce — all built on Next.js.

Three years on a heat pump estimate journey — rebranded, re-platformed and moved to Zoho CRM without downtime, and held to WCAG 2.2 Level AA.

Next.js + Prismic maintenance and an AWS overhaul for the body that standardises global container shipping.

A paid inbox built for BYO Labs from an empty AWS account — inbound mail, Stripe payments, read receipts and payouts, live in five weeks.

Our pre-rebrand work under the Craft Gin Club brand (now The Curious Drinker) — unified a fragmented tech stack and rebuilt the Members Area. 81% conversion uplift.
Related Service
Next.js is how we build. If you would rather start from what you need delivered, our bespoke software development page covers scope, process and engagement.
Tell us what you are building — or what you have inherited. We will come back with a straight answer on scope and approach.
Get in Touch