Services
Only what we actually build. We would rather leave work off this list than learn it on your budget.
Backend and API
Where the business rules live. Multi-tenant data isolation, a role and permission matrix, authentication, a versioned API surface and a consistent error contract. Calculation stays in exactly one place on the server: write the same arithmetic twice and you will eventually quote two different prices.
NestJS · TypeScript · Prisma · PostgreSQL
Web applications
Admin panels and corporate sites. Server-rendered pages, real multilingual routing, and performance we measure rather than assume. Every field a panel shows has already passed a permission check on the server.
Next.js · TypeScript · React
Mobile applications
iOS and Android from one codebase. Three things go into the first release or never: a forced-update check, a versioned API and feature flags. None can be retrofitted, and without them the old builds sitting in the stores dictate your roadmap for months.
Flutter · Dart · FCM
Deployment and infrastructure
How code reaches the server is part of the job. Each client gets its own database and its own database user. Backups live with a second provider and are restore-tested — an untested backup is not a backup. Nothing is pushed straight to the main branches: pull request plus one approval, with every request checked by CI.
Docker · Coolify · Cloudflare R2 · GitHub Actions
How we work
- Scope is written down first — and what is out of scope is stated as plainly as what is in it.
- Rules and arithmetic live on the server. The front end formats; it does not decide.
- A field you are not allowed to see is absent from the response, not hidden in the UI. Hiding is a design choice; omitting is security.
- No breaking API changes. Fields get added — never removed, never retyped.
- Mobile apps are published from your own store account. The app belongs to you.