← Services · 02 / 06

Web apps

Dashboards, portals and the custom workflows your operation actually runs on.

  • Operate
  • In production: Trax, Zesty, Soma
  • Next.js · Node.js · Postgres

Why it matters

A web app is a repeated job done reliably, not a website with a login added later. It has to be right every day, for every role.

We start with the one painful job the app must do every week and the people who do it. The data model comes before the screens: accounts, roles, the records that matter and how money or stock moves.

Permissions are enforced on the server, never only hidden in the interface, and every important change leaves an audit trail.

What we build

01Role-based dashboardsOwners see everything; managers, staff and partners see their own work. Enforced on the server.
02Internal toolsThe spreadsheet, register or WhatsApp group that runs a process, turned into a tool with a record.
03SaaS productsAccounts, workspaces, plans, trials and billing that stays correct through failed payments and refunds.
04APIs and integrationsClean APIs for your mobile app and partners, with retries and idempotency for every external call.
05Admin and support viewsSo your team can see what happened, help a customer and fix data without a developer.
06Reports that matterA few numbers people act on, built after the workflow works, not before.

How we build web apps

  1. 1Discovery noteWho pays, who uses it daily, the weekly job that must work, where the truth lives and what is out of v1. Written down and agreed.
  2. 2Data model firstEntities, roles and states (trial, active, past due) named before screens, so rules stay consistent everywhere.
  3. 3Ship in slicesIdentity and tenants, the core workflow, money or stock side effects, notifications and audit, then admin tools.
  4. 4Demo on stagingRegular demos on a production-like staging site, logged in as real roles, not as an admin who can see everything.
  5. 5Launch and stayDeployed with a runbook, a tested backup restore and error tracking watched after release. The same team keeps it patched and running.

The stack we reach for

Next.js · React
InterfaceFast, accessible screens for dashboards and portals, shared types with the API.
Node.js · Postgres
CoreOne modular service with business rules on the server, Postgres as the source of truth and Redis for queues.
Razorpay · Stripe
MoneyWebhook-first payments: status comes from verified events, never from a success page.
Built forOwnersManagersStaffCustomersSupport teams

Web apps in production

See all work →

Client systems and our own products.

Questions

Something else on your mind? Ask it on the free 30-minute call.
01How long does a first version take?

Most first versions take six to twelve weeks, depending on the workflow and integrations. We scope a version that does one job well, then grow it.

02Who owns the code and data?

You do. The code lives in your repository and the data in your database. We document it so another team could take over.

03Can it replace our spreadsheets and WhatsApp groups?

Usually that is the point. We map how work really moves today, then build the record so nothing depends on someone remembering.

04Do you build the mobile app too?

Yes. The same team builds the web app, the API and the React Native app, so they share one set of rules.

Run it on a system, not a spreadsheet.

A free 30-minute call. Walk us through the job that keeps breaking.
Pick a dayMon – Sat
Request Tue 20 Oct →