Skip to content

Technologies

Chosen, notcollected.

This is the stack we actually build with. It is deliberately short. Everything on it has shipped in production work we are still responsible for.
PiP examining a strict lattice, one cell at a time.
PiP examining a strict lattice, one cell at a time.

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.

Start a project