Software that carries the weight of your business
We build the product your operation actually runs on — typed end to end, tested where it counts, and documented so your next developer starts on day one, not month three.
- Median uptime across shipped apps
- 99.98%Median uptime across shipped apps
- Typical time to first production release
- 6–14 wksTypical time to first production release
- P95 API response we design toward
- <200msP95 API response we design toward
Most teams come to us at one of these moments.
None of these are unusual, and none of them mean anyone did a bad job. They are what happens when a business grows faster than the systems holding it up.
Our first job is to work out which of these is actually costing you money — and to tell you if the answer is none of them.
A prototype grew into the business and now nobody dares touch it.
Three internal tools, three logins, and a spreadsheet holding it together.
Every new feature breaks two old ones because nothing is tested.
Your last agency delivered code no one on your team can read.
Inside web application development.
Six areas we cover in depth. You do not have to take all of them — most engagements start with two or three.
SaaS platforms
Multi-tenant architecture, role-based permissions, billing and usage metering wired in from the first sprint — not bolted on later.
Data-heavy dashboards
Interfaces that stay fast at a million rows: server-side pagination, streamed queries, and caching that reflects how people actually read data.
APIs & integrations
REST and GraphQL services, webhook pipelines, and the unglamorous plumbing between your CRM, ERP and payment provider.
Payments & subscriptions
Stripe and Paddle flows including trials, proration, dunning and tax — the edge cases that quietly cost you revenue.
Progressive web apps
Installable, offline-tolerant experiences that behave like native software without the two-app-store tax.
Legacy modernisation
We replace the old system module by module, so your business keeps running while the foundation changes underneath it.
Everything listed here is in the contract.
No line items that turn out to be optional extras later. If it is on this list it is scoped, priced and delivered.
- Technical architecture document
- Typed codebase, end to end
- Component & design system
- Automated test suite
- CI/CD pipeline
- Staging + production environments
- Monitoring & error tracking
- Handover session + written docs
We pick boring, well-supported tools on purpose. Everything below is something your next hire can already use.
- TypeScript
- Next.js
- React
- Node.js
- PostgreSQL
- Prisma
- Redis
- tRPC
- AWS
- Docker
- Playwright
- Stripe
You own every account, repository and licence we set up on your behalf.
How a web applications engagement runs.
Fixed phases with a defined deliverable at the end of each. You approve one before the next begins.
- 01Week 1–2
Technical discovery
We map the domain, the data and the constraints — then write down the architecture before a line of product code exists.
- 02Week 2–3
Foundations sprint
Repo, environments, auth, design system and deployment pipeline. Everything after this ships to a real URL.
- 03Week 3–12
Feature sprints
Two-week cycles with a working demo at the end of each. You see progress in the product, not in a status deck.
- 04Final 2 weeks
Harden & hand over
Load testing, security review, docs, and a walkthrough with your engineers so ownership genuinely transfers.
What this looks like in practice.
Corvid Logistics — Freight & Supply Chain. 16 weeks of work, with the numbers to show for it.
Rebuilding a live scheduling engine without stopping the trucks
Corvid ran 2,000 daily dispatches through a PHP monolith written by a contractor who had long since left. Adding a customer took an engineer half a day. Peak-hour page loads exceeded eleven seconds, and dispatchers had started keeping a parallel spreadsheet — which meant the system of record was no longer the system of record. A rewrite was necessary, but a big-bang cutover was unthinkable: a single lost dispatch day costs more than the entire project budget.
- Days of downtime during migration
- 0Days of downtime during migration
- Peak dispatch board load time
- 11s → 0.9sPeak dispatch board load time
- Reduction in support tickets
- 61%Reduction in support tickets
- Faster onboarding of new customers
- 4×Faster onboarding of new customers
Clients who bought exactly this.
Every quote below is from a client of this specific service. We will happily put you on a call with any of them before you sign anything.
We had eighteen months of technical debt and a board deadline. OnyxEra rebuilt the core scheduling engine while the old one kept running — not a single day of downtime, and our support tickets dropped by more than half.
They asked harder questions in the first week than our previous vendor did in a year. The architecture document alone was worth the engagement — we still make decisions against it.
Our platform went from 40 to 4,000 concurrent users during a launch and nothing bent. That is entirely down to how they built it.
Web Applications, answered straight.
If something is not answered here, ask us directly — you will get a straight answer rather than a sales call.
Yes, and roughly a third of our work starts that way. We begin with a paid two-week audit: we read the code, run it, document what we find, and give you an honest recommendation — refactor, rebuild, or leave it alone. You keep that document whether or not you continue with us.
You do, from the first commit. We work in your repository under your organisation wherever possible. There are no licence fees, no proprietary frameworks, and no lock-in to us as a vendor.
Most clients move to a support retainer covering monitoring, dependency updates, bug fixes and a monthly improvement budget. It is month to month — if your internal team is ready to take over, we help them do it.
We plan in two-week sprints with a re-prioritisation session before each one. Changing what comes next is free and expected. Changing what has already been built is a conversation about trade-offs, and we will always tell you the real cost.
Often. We can run as an embedded squad inside your team, pair with your engineers, and review their pull requests. The goal is that your team is stronger when we leave than when we arrived.
Ready to talk about web applications?
Bring the messy version of the problem. Thirty minutes on a call is usually enough for us to tell you what it would take and roughly what it would cost.
Typical reply time: under 4 business hours