Updated: Expanded into a full technical article with IndexedDB architecture. Read the Technical Deep Dive →
fahad.ibrahim
← All Case Studies
Case Study · v1.0 · MIT

JG Mart — hyperlocal grocery delivery PWA for a 1,700-family complex

JG Mart grocery delivery interface showing product catalog and WhatsApp ordering flow

WhatsApp-native ordering, Supabase backend, and a 51% margin model. Zero app-store friction, zero middleman markups, zero excuses for slow grocery delivery.

PWA Supabase WhatsApp API Python Vanilla JS Vercel
1,700
Complex size
27
Buildings
4
Clusters
51%
Margin
🎬 Demo Video

A 2-3 minute walkthrough of JG Mart's user flow, operator features, and offline-first architecture. Video recording pending — script ready in demo-scripts/jgmart-demo-script.md

▶️
Demo Video Coming Soon
2-3 min user flow + offline-first walkthrough
⚡ Key Decisions

WhatsApp-first ordering: No app download — meets users where they already are. Direct sourcing: 51% margin by cutting out middlemen, sourced from Krishi Market 800m away. Offline-first PWA: Service worker cache v6 for low-connectivity areas. Cluster routing: 4 delivery zones optimize driver time and fuel. Supabase backend: PostgreSQL + Auth + RPC with Python automation scripts.

01 The challenge

Japan Garden City, Dhaka: a 1,700-family residential complex across 27 buildings, 4 clusters — the intended pilot catchment, not a proven usage count. One Krishi Market 800m away. Residents needed same-day groceries without app-store friction or middleman markups.

The existing solution was a WhatsApp group with manual order taking — error-prone, unscalable, and impossible to track. The challenge wasn't building an app; it was building a system that families would actually use without downloading anything.

02 WhatsApp-native ordering

The radical insight: don't fight user behavior. Meet it. If families already use WhatsApp for coordination, make it the ordering interface.

Why WhatsApp-first

App-store friction kills conversion in emerging markets. WhatsApp penetration in Bangladesh is ~40M users. By using WhatsApp as the interface, we remove the biggest barrier: the download.

03 Technical architecture

A lean stack optimized for speed, offline resilience, and low operational overhead.

LayerImplementation
FrontendVanilla HTML/CSS/JS PWA
BackendSupabase (PostgreSQL + Auth + RPC)
Order flowWhatsApp API + Supabase RPC
AutomationPython 3.11 scripts
DeployVercel + GitHub Actions
PWAService worker cache v6, manifest.json
Vanilla HTML/CSS/JS PWA
Service Worker v6
Offline-first Cache
→
Supabase
PostgreSQL + Auth
WhatsApp RPC
→
Python Automation
Validation + Ops
Vercel + GitHub Actions

JG Mart stack: PWA frontend → Supabase backend → automation

04 Business model

Not a portfolio demo. A revenue model with real numbers.

Unit economics

Average order value: ~800 BDT. Gross margin: 51%. Net margin after delivery and ops: ~15-20%. At scale (5,000 families), monthly revenue: ~1.2M BDT with ~180-240K BDT net profit.

05 Quality & validation

Real metrics from real validation, not vibes.

SignalResult
HTML validation45/45 passing
Python validation17/17 passing
Live site20/20 files HTTP 200
PWAService worker cache v6
CIGitHub Actions green

06 What's next

Pre-seed pilot is live. Scaling requires:

Honest scope

This is a pre-seed pilot, not a Series A platform. The architecture is sized for a 1,700-family complex as the pilot target. What's missing is the capital and operational infrastructure for city-wide deployment — and third-party proof of live household usage is not claimed here.

07 What I learned

Building for real users teaches things no tutorial can:

Browse Store → View on GitHub All Case Studies