What we build with, and why we don't change it often

Highlighted items are our defaults — the ones any team here can pick up on day one. The rest we use regularly and support properly. Anything not on this list, we'd learn on our own time before your project, not during it.

Defaults
Web
React + TypeScript
API
Node.js or Django
Mobile
Flutter
Data
PostgreSQL
Hosting
AWS
01 By layer

The full list

Grouped the way a system is actually assembled, rather than by vendor logo.

Front end

What your users touch

ReactTypeScriptNext.jsVueNuxtViteTailwind

Back end

Business logic and data access

Node.jsPythonDjangoLaravelFastAPIJava / Spring

Mobile

iOS and Android

FlutterReact NativeSwiftKotlin

Data

Storage, search and queues

PostgreSQLRedisMongoDBMySQLElasticsearchFirebase

Infrastructure

Where it runs and how it ships

AWSDockerTerraformKubernetesGitHub ActionsAzureGoogle Cloud

Observability

Knowing before your users do

GrafanaSentryOpenTelemetryPrometheus

Working tools

How the studio runs day to day

FigmaLinearGitSlackNotion
02 Selection

How we choose

Four questions, asked in this order. A tool has to clear all four before it goes near a client project.

01

Can three people here maintain it?

If the answer is one person, it's a liability, however good that person is.

02

Will your next hire recognise it?

You should be able to recruit for this stack in Kathmandu, Sydney or London without a specialist search.

03

What happens when it's abandoned?

Every dependency eventually stops being maintained. We check the exit before committing to the entrance.

04

Is it genuinely better, or just newer?

We write the trade-off down. If we can't articulate what it beats and by how much, we don't adopt it.

Running something that isn't on this list?

We inherit legacy stacks regularly — PHP monoliths, ageing Angular, an ERP nobody wants to touch. Tell us what you've got and we'll say honestly whether we're the right team for it.

Studio
Dharan, Nepal
Local time
Reply time
1 business day