Pillar 03
Built to surviveyear two.
Most rebuilds we are asked to do are not two years old because the business changed. They are two years old because nobody could safely change the code. So the first version is built the way the eventual one is — an early release is not a licence for something disposable.
Products & web applications
The first working version you can put in front of a customer or an investor, and the dashboards, internal tools and portals it becomes — the things that begin as a spreadsheet and end up running the business. Auth, role hierarchies, audit trails, and the unglamorous parts done properly the first time.
- Next.js
- React
- Postgres
- Node / Python
Marketing sites
Fast, editable by your team, and built so a content change never requires a developer — which matters whether that developer is unavailable or simply does not exist.
- Next.js
- Headless CMS
Mobile
One codebase across iOS and Android when that is the right call, native when it is not.
- React Native
- Expo
Interactive & WebGL
Product configurators, data visualisation, and 3D that earns its bandwidth. We will talk you out of it if it does not — a 5MB hero model that adds nothing is a conversion cost, not a differentiator.
- Three.js
- GSAP
- Shaders
- glTF pipeline
How we build
Four constraints we hold to
Fewer moving parts
Every service, queue, and abstraction you add is something that can page someone at 3am. We add them when the alternative is worse, not by default.
Your team can read it
We pick the stack based on who maintains it after we leave. Clever code that only its author understands is a liability we are handing you.
Deployed from week one
A staging environment exists before the first feature does. Anything that has never been deployed is not finished, it is a hypothesis.
You own everything
Your repository, your cloud accounts, your domain. No retainer required to keep the lights on and no proprietary layer you cannot leave.
Which one are you
Two tracks, and they worry about opposite things.
Shipping fast
MVP, pitch-ready
You are raising, pitching, or testing whether anyone wants this. The fear is spending six months on something nobody asked for.
So the first release is narrow and real: one flow, working, in front of a customer. Not a prototype that has to be thrown away — the same codebase you keep building on if it lands.
Building for scale
Production application
It already has users, or it will on day one. The fear is inheriting something your own team cannot safely change.
So the stack is chosen for whoever maintains it after we leave, the architecture is documented, and nothing depends on a person who has left the building.
Launch is not the finish line — see how the support stage works.
The stack, translated
What each of these is actually for.
- Next.js
- The framework most of our web work is built on. Pages arrive fast, search engines can read them, and hosting is boring in the way you want hosting to be.
- React Native
- One codebase that produces both an iOS and an Android app. You pay for one build instead of two, and features land on both at the same time.
- Postgres
- The database. Chosen because it is unglamorous, twenty-five years old, and will still be supported long after this engagement ends.
- Node / Python
- What the server logic is written in. Python where there is AI or data work involved, Node where the front end and back end benefit from one language.
- Headless CMS
- Your team edits the words and images without touching code or waiting on us. The site is not hostage to a developer being free.
- WebGL
- Real-time 3D in the browser. For product configurators and interactive demos a normal website cannot do — used when it earns its place, not as decoration.
Rebuild or patch