Technologies
Chosen, notcollected.
Frontend
JavaScript
The language underneath every interface we ship, written without framework dogma.
TypeScript
Types on anything that will be maintained by more than one person.
React
Component-driven interfaces for applications and content-heavy sites.
Next.js
Server rendering, routing and image optimisation for React products.
HTML & CSS
Semantic markup and hand-written layout, responsive from 320px up.
Tailwind CSS
Token-based styling that stays consistent across a growing team.
Commerce
Shopify
Storefronts, checkout customisation and merchant tooling.
Shopify Liquid
Theme architecture, sections and metafield-driven templates.
Shopify APIs
Storefront, Admin and Ajax APIs for custom cart, search and integrations.
Backend & CMS
Node.js
APIs, integrations, automation and headless backends.
PHP
Custom backends and the language behind WordPress and Laravel work.
Laravel
Structured web applications with authentication, queues and admin tooling.
WordPress
Custom themes and editorial sites without plugin bloat.
Platform
REST & Webhooks
Connecting storefronts, CRMs, ERPs and marketing tools.
Web Performance
Core Web Vitals, asset budgets and rendering strategy.
Git & CI
Versioned work, reviewed pull requests and repeatable deploys.
How we choose
Four rules for picking a stack.
- 01
Fit the team that will maintain it
A stack is chosen for the people who will own the product after launch, not for what we feel like using this month.
- 02
Boring where it can be
Well-understood tools with long support horizons. Novelty has to earn its place with a concrete benefit.
- 03
Fewer dependencies
Every package and app is a future maintenance cost. We prefer a few hundred lines we understand to a plugin we do not.
- 04
Performance is architectural
Rendering strategy, image pipeline and script budget are decided before the first component is built.
Building on something else? Let’s forge it.
If your product runs on a platform not listed here, ask. We will say honestly whether we are the right team.