Services
What we build, and who it’s for.
Seven practice areas. We turn down work that falls outside them, which is why the list is this short.
eCommerce & Shopify
DTC brands, Shopify Plus merchants, and stores outgrowing a purchased theme.
Your storefront converts worse than it should, and every fix breaks something else.
Theme 2.0 storefronts built on sections and schema, so the store stays editable without a developer — and stays fast once it fills up with products.
What you get
- Custom Theme 2.0 development
- Headless and Hydrogen storefronts
- Product bundles, filters, cart and coupon logic
- Shopify app development
- Sales channel and third-party integrations
- Theme migrations and performance recovery
- Liquid
- Theme 2.0
- Hydrogen
- Storefront API
- Admin API
- Shopify Plus
- Markets
- Checkout Extensibility
- Metafields
- Subscriptions
- B2B
- Klaviyo
- GA4 & GTM
Custom Websites
Companies whose website is a sales asset rather than a brochure.
Your site was built on a page builder and now nobody can change anything safely.
Sites built on a real content model, so editors edit content and developers change code, and neither breaks the other.
What you get
- Marketing and brand sites
- WordPress theme and plugin development
- Headless CMS builds
- Content modelling
- Technical SEO and schema
- Next.js
- React
- WordPress
- PHP
- Tailwind
- TypeScript
- WooCommerce
- Craft CMS
- Webflow
- Headless CMS
Web Applications
Founders past the MVP, and teams replacing a system they have outgrown.
The prototype proved the idea. It will not survive the users.
Applications with the boring parts done properly — auth, permissions, background jobs, and a data model that still makes sense in two years.
What you get
- SaaS platforms and dashboards
- Authentication and role-based access
- REST APIs and integrations
- Queues, jobs and scheduled work
- Admin and internal tooling
- Laravel
- PHP
- Node.js
- React
- Next.js
- MySQL
- TypeScript
- Ruby on Rails
- .NET
- Java
- Vue.js
- Python
- PostgreSQL
- Stripe
Mobile Apps
Brands and platforms where the phone is the primary surface.
Your customers live on their phones and your product does not.
Native and cross-platform apps that talk to the backend you already have, rather than requiring a new one.
What you get
- iOS and Android applications
- API design for mobile clients
- Store submission and release process
- Release support and maintenance
- iOS
- Android
- React Native
- REST APIs
- Swift
- Kotlin
- App Store & Play Store release
Backend & Scalable Systems
Teams whose growth has started to cost them uptime.
It works fine until traffic arrives, and then nobody knows which part gave way.
We find what breaks first — queries, indexes, queues, caching — and rebuild those, rather than rewriting everything.
What you get
- API design and development
- Database design and query optimisation
- Background processing and queues
- Third-party and ERP integrations
- Performance and scalability work
- Laravel
- Python
- Django
- Node.js
- MySQL
- REST
- Ruby on Rails
- .NET
- Java
- PostgreSQL
- Redis
- Queues
UI/UX Design
Teams who need design that survives contact with engineering.
The design looks good in Figma and falls apart at 375 pixels.
Interface work done with the constraints of the build in mind, and decisions you can point at a reason for.
What you get
- Wireframes and user journeys
- Interface and design systems
- Figma-to-production handoff
- Accessibility review
- Conversion-focused UX
- Figma
- WCAG 2.2
- Design systems
- Prototyping
- Design tokens
- Accessibility audits
QA, DevOps & Support
Anyone running production software without a safety net.
You find out about the bug when a customer emails you about it.
Testing and deployment set up so releases are boring, and someone is watching production who is not your customer.
What you get
- Manual and automated regression testing
- CI/CD pipelines and deployment
- Performance monitoring and Core Web Vitals
- Long-term maintenance retainers
- CI/CD
- Git
- Lighthouse
- Automated testing
- Playwright
- Cypress
- Selenium
- Docker
- GitHub Actions
- Monitoring
Operating discipline
How we work
Most studios describe this as a proven methodology and move on. Here is what ours actually consists of.
Nothing ships unreviewed
Code review, regression tests, and a performance budget met — before release, not after a client reports it.
Scope changes are written down
Every change request is documented and agreed by both sides. No silent drift, no invoice surprises.
A standing call, and a real status
Weekly or fortnightly, depending on the engagement. You get a person, not a dashboard.
You see what you're paying for
Team composition and rates are shared up front. You know who is on your project and what they cost.
Process
Four steps, and no theatre.
- 01
Scope
We work out what you actually need, which is rarely what the brief says. Written scope, fixed before anyone estimates.
- 02
Architect
Stack and structure chosen against your goals, budget and growth — not against what we happen to enjoy building.
- 03
Build
Reviewed, tested, and measured against a performance budget. You see progress weekly, on a real environment.
- 04
Handover
You own the code, the repository and the credentials. Documentation written for whoever comes next, including us.
Technology
How we choose a stack
We are not paid to recommend a platform. The decision is made against five things, in this order:
- 01What the project actually has to do
- 02How far it has to scale, and how soon
- 03What it costs to run, not just to build
- 04Whether someone else can maintain it in three years
- 05Performance under real traffic, not benchmark traffic
How AI fits in
AI-accelerated. Human-verified.
We use modern AI tooling the way good engineers now do — to move faster through prototyping, refactoring and the boilerplate. Then a senior engineer reviews every line before it ships. AI writes drafts; people are accountable for production.
Faster, not looser
AI compresses the parts that used to take days. The review bar it goes through is exactly the same.
You own the result
No black boxes. Readable, documented code you or anyone else can maintain — whether a person or a model wrote the first pass.
Judgement stays human
Architecture, trade-offs and what actually ships are decided by engineers who have made those calls for years.
Engagement
Three ways to work with us.
Rates and team composition are shared before you commit to anything. You will know who is on your project and what they cost.
Project
A defined build with a written scope, fixed milestones, and a fixed price. Best when you know what you need.
Priced per project. Paid against milestones.
Retainer
A fixed allocation of engineering time each month. Best for stores and platforms under continuous development.
Monthly. Predictable capacity, predictable cost.
Hybrid
An initial build, then a monthly retainer for support and improvement. How most long-running engagements actually work.
One-time build fee, then monthly.
For agencies
We take white-label delivery work — you hold the client relationship, we handle technical strategy, build, QA and support.
Not sure which of these you need?
Tell us what's slow, broken or stuck. A senior engineer will tell you what's actually worth doing — before anyone estimates.
We reply within one business day