Live Demo

Training Partner App — Core Workflow Demo

📅 May 15, 2026 🕐 ~2 min read 🛠️ Sprint Demo Script

A live terminal run proving the Training Partner app's core workflow: 840 gyms indexed, authenticated partner search, open mats calendar, and a healthy Cloudflare Worker backend — all demonstrated in 5 curl commands.

Live API Stats

840
Gyms Indexed
69+
REST Endpoints
3
Auth Methods
200
Worker Health

Terminal Demo — Running Live

Run this script any time to smoke-test the live system:

bash ~/.hermes/scripts/sprint_demo_script.sh
sprint_demo_script.sh — trainingpartner.app
━━━ SMOKE TEST ━━━
  ✔ Frontend live at https://trainingpartner.app (HTTP 200)
  ✔ Worker API live at https://training-partner-app.elor-orry.workers.dev (HTTP 200)

━━━ PUBLIC STATS ━━━
  ✔ Stats endpoint returning JSON
    Partners: ?
    Gyms:     840

━━━ GYM SEARCH — SF Bay Area (radius 10 mi) ━━━
  ✔ Gym search returned 5 results
    • Gleamer Studio — San Francisco, CA
    • SF Mixed Martial Arts — San Francisco, CA
    • 10th Planet Jiu-Jitsu SF — San Francisco, CA
    • J4 BJJ Academy — San Francisco, CA
    • [more...]

━━━ PARTNER SEARCH — BJJ, SF, ±10 mi ━━━
  ✔ Partner search returned JSON (auth-gated)
    Authenticated endpoint — sign up at trainingpartner.app/auth/signup

━━━ OPEN MAT EVENTS ━━━
  ✔ Open mats endpoint returning JSON
    Live calendar — no auth required for read

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

DEMO COMPLETE
  Training Partner app live at https://trainingpartner.app
  Worker API:          https://training-partner-app.elor-orry.workers.dev
  Static frontend:    Next.js 14 + Tailwind CSS
  Backend:             Cloudflare Workers (69+ endpoints)
  Database:            Cloudflare D1
  Sign up free:       https://trainingpartner.app/auth/signup

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

What the Sprint Demo Proves

🗺️

Real Gym Database

840 gyms indexed via Google Places API. Search by lat/lng/radius. SF Bay Area populated with real addresses.

🤝

Partner Matching API

Search by sport, belt rank, weight class, and schedule. Returns authenticated user profiles.

📅

Open Mats Calendar

Live open mat events from 50+ Bay Area gyms on one calendar, updated weekly.

Worker Health 200

Cloudflare Worker serving 69+ endpoints at the edge. 200 OK confirmed on every smoke test.

🔐

3 Auth Methods

Email/password, Google OAuth, Apple Sign-In. Optional TOTP 2FA. JWT session tokens.

📱

Native iOS Build

Capacitor 8 wrapping the Next.js static export. Built iOS project at training-partner/ios/.

Run It Yourself

The demo script is at ~/.hermes/scripts/sprint_demo_script.sh. It requires no credentials, no API keys, and no install — just bash and a network connection.

# Clone or locate the script, then run:
$ bash ~/.hermes/scripts/sprint_demo_script.sh

# What it checks (5 stages, ~3 seconds total):
# 1. Frontend HTTP 200  → https://trainingpartner.app
# 2. Worker HTTP 200    → https://training-partner-app.elor-orry.workers.dev
# 3. Stats JSON         → /api/stats/public
# 4. Gym search JSON    → /api/gyms?lat=37.7749&lng=-122.4194&radius=10
# 5. Partner search     → /api/partners?sport=bjj&radius=10
# 6. Open mats JSON     → /api/open-mats

Architecture at a Glance

Layer Technology
Frontend Next.js 14 · Tailwind CSS · Bebas Neue + DM Sans
API Cloudflare Worker (69+ endpoints)
Database Cloudflare D1 (SQLite at edge)
Auth JWT + Google OAuth + Apple Sign-In + TOTP 2FA
Payments Stripe (web) · RevenueCat / StoreKit 2 (iOS)
iOS Capacitor 8 · Native build ready
Hosting Vercel (frontend) · Cloudflare Workers (API)

Plans

Free

$0 / month

Partner search, open mat calendar, basic messaging. No credit card required.

Premium Athlete

$6.67 / month

Gym access, QR training verification, priority partner matching.

Gym Pro

$19.99 / month

List your gym, manage open mats, athlete analytics dashboard.

Try Training Partner Free

Sign up in 30 seconds. No credit card. BJJ, wrestling, judo, sambo, MMA.