
GymPilot
B2B SaaS gym management — 4 gyms in daily active use, 614 members managed, paying customers from Month 2.
# Description
GymPilot is a B2B SaaS gym management platform built from zero to paying customers. Owned end-to-end — 8 gyms onboarded, 4 in daily active use, 614 members managed, 500+ commits over 3 months of iteration on real customer feedback. 4 organic signups with zero paid marketing.
# Tech Stack
- Next.js + TypeScript for the full-stack application
- Supabase (PostgreSQL) — application-level multi-tenancy with gym_id-scoped queries
- NextAuth for session management — gym_id bound to JWT, enforced at every server action
- WhatsApp Business API (Meta Cloud API) — 4,100+ messages, 86% read rate, 20+ error codes handled
- Razorpay for payment processing and subscription management
- Biometric hardware integration — reverse-engineered two vendor protocols on-site
- Super-admin impersonation system with session expiry for customer support
# Problem
Existing gym management tools are built for large chains — bloated with features small Indian gyms don't need, priced accordingly, and built around SMS which nobody actually uses. Gym owners needed something that matched how they already communicate: WhatsApp.
# Solution
Stripped feature bloat and built WhatsApp-first. Integrated biometric attendance hardware across two vendors with zero official documentation — reverse-engineered device protocols on-site and built a command queue that automatically revokes hardware access when a membership expires. Caught a session caching failure during a live client demo, diagnosed on the spot and redesigned staff onboarding from token-based invites to stateless JWT so access changes propagate instantly. Built a WhatsApp notification engine (Meta Cloud API) — 4,100+ messages delivered at 86% read rate — handling 20+ error codes and duplicate webhook detection. Multi-tenant architecture with application-level gym_id isolation and super-admin impersonation for customer support.
# Results
8 gyms onboarded, 4 in daily active use, 614 members managed. Paying customers within 2 months of launch. 4,100+ WhatsApp messages at 86% read rate. 4 organic signups — no paid marketing.