GymBud is the operating system I built for independent fitness coaches — the people who run their business out of WhatsApp and a notes app, with no IT department behind them. It is a coach dashboard on the web, a student app on iOS and Android, a coach iOS shell, a billing engine that speaks both Stripe and Asaas, and a production AI support bot that answers coaches and their students on WhatsApp and in-app.
The product surface is wide because the job is wide. A coach signing up gets a white-label public page for their business, a client list with onboarding magic-links, a training program builder, scheduling and recurring check-ins, push notifications, marketplace listings, EN and PT-BR language support, and billing flows that handle both international and Brazil-domestic payments. The student gets a mobile app with offline workout storage, voice notes, a rest timer that survives the screen sleeping, and the same support bot the coach has.
The architectural spine is Next.js 14 plus Supabase — Postgres with row-level security, Edge Functions for the long tail, Storage for media. Fifty migrations and roughly seventy API route groups later, the model is multi-tenant on the coach axis with sub-resources (clients, programs, messages, check-ins, payments) scoped per coach via RLS. Push notifications go through Firebase, transactional email through Resend, error and performance telemetry through Sentry per-app project with sourcemaps and release tags.
The piece I am most deliberate about is the AI support bot. It runs on Anthropic's Claude with a typed tool catalog — Zod schemas compiled to JSON Schema, served per-role to the model. Eighteen typed tools today, with hard caps on tool-loop rounds and a hard-exit on escalateToHuman. Four personas selected at runtime by who is talking and from which surface. Prompt caching on the system and tools (measurable bill drop). Pre-LLM guards for keyword triggers, frustration heuristics, and STOP/PARAR compliance. A three-tier rate-limit ladder. Per-turn database telemetry — input tokens, output tokens, latency, tool-call traces. A transport abstraction so WhatsApp and the in-app web surface share the same brain. A bi-weekly review of escalations and the full success corpus that feeds category-level prompt updates, wired into the project's CLAUDE.md so the cadence does not slip.
GymBud was accepted into the NVIDIA Inception program in 2026 — NVIDIA's partner program for AI companies, gated on real AI deployments and an incorporated product. It is external validation that the AI stack here is operationally serious, not LLM-wrapper hype.
I built this from zero. I am the founder and CEO, the architect, and most days still the engineer.
