Gasuna
Smart gas monitoring. Automatic refills.
Gasuna puts a smart sensor on every gas cylinder and turns low gas into automatic refill orders, tracked deliveries and automated billing — all from one platform. I architected and built it end-to-end: the connected-device telemetry pipeline, the NestJS backend, the Angular supplier dashboard, and the React Native customer app, deployed on Google Cloud with AWS IoT Core.
The challenge
Bottled-gas suppliers still find out a customer has run out when the phone rings. Delivery runs are planned on guesswork, cylinders get swapped half-full, and invoices are chased by hand. Customers find out at the worst possible moment — mid-service, mid-shift, or on a cold evening.
The brief was to make the cylinder itself the source of truth: measure the gas in real time, and turn that signal into refills, deliveries and payments automatically, with no phone calls and no guesswork — across a fleet of devices, suppliers and end customers.
What I built
Gasuna connects every cylinder to the cloud. A smart device weighs the cylinder and streams its gas and battery level over MQTT; the platform detects low gas, raises a refill request, routes the delivery, and takes payment. I owned the architecture and the full stack across four surfaces:
sensorsIoT & real-time telemetry
- Ingest gas-weight & battery telemetry over MQTT via AWS IoT Core
- Real-time processing of device readings into gas levels per cylinder
- ML-based leak / anomaly detection and low-gas thresholds
- Automatic refill-request generation when gas runs low
dnsBackend & platform
- Modular NestJS API for devices, customers, orders and invoices
- Order lifecycle: Requested → In process → Dispatched → Delivered
- Stripe billing — card-on-delivery and monthly account invoicing
- Auth0 authentication; role-based access across supplier teams
dashboardSupplier dashboard (web)
- Angular dashboard with live alerts, orders and fleet health
- Device fleet view with gas, battery and last-reported status
- Customer profiles with devices, billing and lowest gas level
- Guided four-step customer onboarding and cylinder-type setup
smartphoneCustomer mobile app
- React Native app for iOS & Android with PIN sign-in
- Bluetooth device pairing and Wi-Fi provisioning flow
- Live gas level, so customers never tap a cylinder to guess
- Deployed on Google Cloud; prototype → commercial pilot
How it works
Fit the device
Clip a Gasuna smart device onto the cylinder and pair it in minutes from the mobile app.
Monitor in real time
The device reports gas level and its own battery to the cloud over MQTT, continuously.
Refill automatically
When gas runs low, a refill request lands on the supplier's dashboard straight away.
Deliver & get paid
Track the order to delivery; payment is taken by card or added to a monthly invoice.
For customers: the mobile app
End customers get the Gasuna app for iOS and Android, built in React Native. They onboard, pair their device over Bluetooth, connect it to Wi-Fi, and check their gas level any time — no more tapping the cylinder to guess what's left.
The same account powers the customer list and billing in the supplier dashboard, so both sides of the marketplace stay in sync in real time.
Proven in production
Gasuna is live with businesses in day-to-day operation — including a branch of a global restaurant chain, running in a kitchen that can't afford to run out of gas.
Building something connected?
I design and ship IoT platforms end-to-end — devices, cloud, web and mobile. Let's talk about yours.