Cases/SVSFood
Full-Scale Product Engineering

SVSFood
Kiosk, Console, Website and Delivery

Three food outlets. One vendor dependency. Built four custom products to replace it completely.

Client

SVSFood

Location

Madhya Pradesh, India

Duration

May 2026 – Jun 2026

Role

Lead Developer & Architect

Also contributed

Akanksha Singh

L+

Revenue in first month alone

via self-ordering devices only

Outlets running the kiosk

fully replaced Uengage

%

Reduction in vendor dependency

full stack now owned

+

Orders processed

kiosk + web combined

Background

Three outlets.
One vendor.
Zero control.

SVSFood runs three food outlets in Madhya Pradesh. They came to me with a clear ask: stop depending on a vendor for technology that runs their entire business, and build something they actually own.

The scope grew naturally as we mapped the gaps. An in-store kiosk replacement. A back-office console. A proper branded website for online orders. And once online orders were live, a delivery app to fulfil them. Four products, one pipeline.

I worked as the sole developer and architect across the entire stack. The constraint that shaped every decision: all four surfaces had to share the same data, the same menu, and the same order state in real time.

Process

How it was built

Uengage was the vendor. They supplied a subscription kiosk and a templated online ordering site. SVSFood paid per terminal, had no control over the UI or data, and whenever something broke they waited on external support. Menus had to be updated in two separate places. There was no order history they owned, no analytics, no way to add features. The dependency was total.

  • Recurring subscription cost for each kiosk terminal
  • Uengage service issues causing downtime at outlets
  • Zero control over UI, branding, or customer flow
  • Online ordering ran on a separate vendor template with no integration
  • No unified inventory or order management across outlets

I designed and built a fully custom self-ordering kiosk application to replace the Uengage dependency entirely. The kiosk runs on tablets at each outlet and is purpose-built for SVSFood, their branding, their flow, their control. It's fast, offline-tolerant, and tailored to exactly how their staff and customers operate.

  • Touch-first UI designed for 10" tablets at counter level
  • Category browsing, item customisation, add-ons and variants
  • Cart flow, coupon/offer application, and order summary
  • QR-based receipt generation and kitchen order ticket print
  • Session management and staff PIN for end-of-day resets
  • Offline mode with local queue that syncs on reconnect

The kiosk alone wasn't enough. I built a comprehensive console web application a complete back-office for SVSFood operations. Every dimension of the restaurant is managed from one place: inventory, menus, staff, outlets, orders, reports, and logs. No more spreadsheets, no more calling the vendor for a menu update.

  • Inventory management: stock levels, low-stock alerts, categories
  • Menu builder: items, variants, add-ons, pricing, images
  • Coupon and offers engine: % off, flat off, item-level promos
  • Order management: live feed, status updates, order history
  • Multi-outlet support: separate views per location
  • Admin user roles and permissions management
  • Receipt and invoice generation, download as PDF
  • Full audit log: every action timestamped and attributed
  • Analytics dashboard: revenue, items sold, peak hours

SVSFood was also using an Uengage-hosted website template for online orders. I built them a custom-branded Next.js website that links directly into the same ordering pipeline as the in-store kiosks. One system. Everything in sync. Frontend work on the website was also contributed by Akanksha Singh.

  • Custom branded Next.js website, pixel-perfect to their identity
  • Full online ordering flow: browse, customise, cart, checkout
  • Same menu/inventory source as kiosk, always in sync
  • Coupon codes work across both kiosk and web
  • Delivery address entry with Google Maps integration
  • Live order tracking with status updates for the customer
  • Order history and reorder for returning customers

With online orders live, deliveries needed coordination. I built a dedicated delivery rider app, a React Native mobile app that receives assigned orders, shows live route navigation via Google Maps, and syncs order status back to both the customer-facing site and the admin console in real time.

  • React Native app for Android, lightweight and fast to load
  • Order assignment and push notification on new delivery
  • Google Maps integration for live turn-by-turn navigation
  • Status updates: picked up, en route, delivered
  • Order details, customer contact, and address in-app
  • Rider earnings log and delivery history
  • Status syncs live to admin console and customer tracking page

The real value isn't any single product. It's that everything talks to each other. A customer orders on the website, the kitchen sees it immediately via WebSockets, the rider is assigned, the customer tracks it live, and the admin has a full log. The same inventory powers kiosk, web, and reports. No double entry, no lag, no vendor in the middle.

  • Shared Fastify API backend serving kiosk, website, and rider app
  • PostgreSQL database with Prisma ORM as the single source of truth
  • Real-time order status via WebSockets across all clients
  • Shared coupon engine: codes valid across all ordering channels
  • Centralised menu and inventory: one change reflected everywhere
  • Admin console sees orders from all channels in a unified feed
  • Docker-based deployment on GCP, scalable and always-on

Stack

Technology used

Kiosk App

React NativeExpoTypeScript

Console & Website

Next.jsTypeScriptTailwind CSS

Rider App

React NativeGoogle Maps SDK

Backend

FastifyNode.jsWebSockets

Database

PostgreSQLPrisma ORM

Infrastructure

DockerGoogle Cloud Platform

The core insight

"A kiosk, a website, a rider app, and a dashboard are only valuable if they're one system. Not four."

The entire build was designed around a shared Fastify API and a single PostgreSQL database. One menu change updates the kiosk, the website, and the reports simultaneously. One order is visible to the kitchen, the rider, the customer, and the admin in real time. That unification is what SVSFood actually bought when they decided to move off Uengage.

Outcome

Where things stand

All three outlets are running the custom kiosk. Uengage is gone. The admin console handles inventory, menus, coupons, staff, and order logs from one place.

The website is live and taking online orders. Deliveries go through the rider app with live tracking visible to customers. Everything runs on the same backend.

The system generated over ₹7 lakh+ in revenue in the first month, tracked only through the self-ordering kiosk devices. SVSFood now owns their entire technology stack with no recurring vendor fees and full control over the product.

Active development continues: new outlet rollouts, expanded analytics, and a customer loyalty module are in progress.

3 outlets running custom kiosk
Uengage fully replaced
Zero vendor subscription fees
Single admin console for everything
Live online ordering & delivery
Real-time order sync across all surfaces
Full audit log & analytics ownership

More cases

See all case studies

View cases

Let's build together. Waiting to connect.

©2025Vishu Pratap · Software Developer