Web Platform & Mobile

HuraGaz Field Operations Platform

We unified a web admin panel, driver and technician mobile apps, and a shared type-safe API into a single monorepo for gas distribution and field operations.

  • TypeScript
  • Turborepo
  • Next.js
  • React Native
  • Expo
  • Hono
  • oRPC
  • Drizzle ORM

HuraGaz web admin panel dashboard
HuraGaz driver mobile app tasks and orders screen

Problem

CRM, delivery, service calls, billing and field-team tracking ran in disconnected tools; daily operations were managed over the phone and on paper.

Solution

We unified the admin panel, driver and technician apps around a shared type-safe API, digitizing delivery, service, billing and live location tracking end to end.

Where it started

HuraGaz ran the daily operations of 10+ administrators, a large fleet of drivers and technicians, and over 30,000 customers. Order intake, delivery planning, service calls, cylinder loading and billing were managed separately, often on paper and by phone.

In the field, drivers tracked what they delivered, which order was with whom, and their daily balance by hand. On the management side, there was no way to see the current state.

How we approached it

We built a single Turborepo monorepo: the web admin panel, driver app, technician app, and a type-safe API layer shared by all of them. So when a field changes in the API, every client warns at compile time.

We digitized operations piece by piece: first customer and order management, then delivery and cylinder loading, then service calls, billing and live location. As each module was tested in the field, the manual process was retired.

Technical solution

The web side was built with Next.js, the mobile side with React Native and Expo; the API was built on Hono and oRPC, and the data layer with Drizzle ORM on PostgreSQL. Authentication used Better Auth and the runtime was Bun.

Push notifications were delivered with Firebase Cloud Messaging and field tracking with Google Maps. The web runs on Vercel and services on Google Cloud Run. Interfaces were built multilingual.

Let the next project be yours

If you have a similar need, let's talk through how we could move forward in a short call.