Technology
The whole stack,
in plain words.
We build across all of it: the app in your customer's hand, the services behind it, the cloud it runs on, and the data and AI on top. Every choice is explained before it is made.
The stack
12 layers,
one standard.
Mobile apps
What it does. Apps your customers install on iPhone and Android, built to keep working on a weak connection.
- iOS
- Android
- Flutter
- Swift
- Kotlin
- React Native
- Expo
- Firebase
How we build it. Native Swift and Kotlin, or Flutter and React Native when one codebase should serve both. Offline-first sync, push, crash reporting and automated store releases.
Web frontend
What it does. Websites and web apps that load quickly, work on any screen and can be found in search.
- React
- Next.js
- TypeScript
- Angular
- Vue.js
- Nuxt
- Svelte
- Tailwind CSS
How we build it. React and Next.js in TypeScript by default, Angular or Vue where a team already runs them. Server rendering, edge caching, accessible components and a performance budget on every build.
Backend and APIs
What it does. The engine behind the screens: accounts, payments, data and the connections to systems you already use.
- Node.js
- NestJS
- Python
- Django
- FastAPI
- Java
- Spring Boot
- .NET
- PHP
- Laravel
- Go
- GraphQL
How we build it. Services in Node.js, Python, Java, .NET, PHP or Go. REST and GraphQL APIs, queues and background jobs, and integrations designed to be retried safely.
Databases
What it does. Where your records live: kept correct, quick to search and recoverable after a bad day.
- PostgreSQL
- MySQL
- MongoDB
- Redis
- Elasticsearch
- DynamoDB
- Supabase
How we build it. Relational first, in PostgreSQL or MySQL. Document, key-value and search stores where the access pattern calls for them. Migrations in code and restores that are rehearsed, not assumed.
Cloud
What it does. Where your software runs, sized for the traffic you have and ready for the traffic you expect.
- AWS
- Microsoft Azure
- Google Cloud
- Cloudflare
- Vercel
- DigitalOcean
How we build it. AWS, Azure and Google Cloud, with Cloudflare at the edge. Landing zones, least-privilege access, cost tagging and accounts held in your name.
DevOps and reliability
What it does. How updates reach people without downtime, and how problems are found before customers report them.
- Docker
- Kubernetes
- Terraform
- GitHub Actions
- GitLab CI
- Jenkins
- Prometheus
- Grafana
- Sentry
How we build it. Containers on Kubernetes, infrastructure as code in Terraform, pipelines with automated tests and rollback, and monitoring, alerting and error tracking from the first release.
Data and analytics
What it does. Your numbers in one place you can trust, so decisions stop waiting on spreadsheets.
- BigQuery
- Snowflake
- Databricks
- Apache Kafka
- Apache Spark
- Airflow
- dbt
- Looker
- Power BI
- Tableau
How we build it. Warehouses on BigQuery, Snowflake or Databricks. Pipelines in dbt and Airflow, event streams on Kafka, governed models and dashboards in Looker, Power BI or Tableau.
AI and machine learning
What it does. Assistants and automation that answer from your own documents, and show where each answer came from.
- OpenAI
- Anthropic
- Google Gemini
- LangChain
- Hugging Face
- PyTorch
- TensorFlow
- scikit-learn
- Ollama
How we build it. LLM applications with retrieval, tool use and guardrails. Evaluation suites, a cost and latency budget per call, and PyTorch or TensorFlow when a custom model earns its place.
CMS and commerce
What it does. Sites your team can update without a developer, and checkouts that take payment in your customer's currency.
- WordPress
- Shopify
- WooCommerce
- Magento
- Strapi
- Contentful
- Sanity
- Stripe
- Razorpay
How we build it. Headless content on Strapi, Contentful or Sanity, WordPress where editors already know it, Shopify, WooCommerce or Magento for commerce, and Stripe or Razorpay for payments.
CRM and marketing
What it does. Knowing where each customer came from, and making sure no enquiry is forgotten.
- Salesforce
- HubSpot
- Zoho
- Google Analytics
- Google Tag Manager
- Google Ads
- Meta
- Mixpanel
How we build it. Salesforce and HubSpot implementation and integration, GA4 and Tag Manager with consent-aware tagging, product analytics in Mixpanel, and ad platforms reported against revenue.
Testing and quality
What it does. Proof that it works, before your customers are the ones who find out it does not.
- Playwright
- Cypress
- Selenium
- Appium
- Jest
- Vitest
- Postman
- k6
How we build it. Unit, integration and end-to-end suites in Jest, Vitest, Playwright and Cypress, mobile automation with Appium, API checks in Postman and load tests in k6.
Design and prototyping
What it does. How it looks and how it feels to use, decided and tested before code is written.
- Figma
- Framer
- Storybook
- Adobe Illustrator
- Adobe Photoshop
- Adobe After Effects
How we build it. Research and journey mapping, Figma design systems with tokens mapped to components, documentation in Storybook and WCAG 2.2 AA as the working target.
Not sure what you need? You don't have to be.
Describe the problem. We recommend the approach, and explain the choice in plain words before anything is built.
How we choose
Constraints first,
fashion never.
We choose against your users, your security requirement, the systems you already run, your team, the expected load and the cost of operating it, in that order.
Proven underneath
Databases, identity, payments and infrastructure get well-understood technology. Novelty is spent where users can feel it.
Chosen in writing
Every significant choice is recorded with the constraint it answers and the alternative we rejected.
Yours to keep
Accounts in your name, infrastructure as code, and no dependency on us to keep it running.
Measured, not assumed
Performance and cost, and accuracy for AI features, are budgeted per feature and checked before release.