One system.
Every corner of the gym.
From the first click on the website to the hundredth sign-in at the kiosk, the Warrior Engine runs the whole journey. Website, member portal, staff app, front-desk kiosk and a growth engine, all speaking to one database, in real time.
Follow a member through the machine
This is the actual pipeline, live in production. Red is the path a new member travels; gold is the loop that keeps them training month after month.
Real screens, running today
Actual screenshots from the live system, member details anonymised. Top row: what the public sees. Bottom row: the engine room.
Eighteen modules, zero seams
Each one earns its place; all of them share the same live data.
๐ Public Website
The shop window that actually sells.
- Offer landing pages: free trial, Muay Thai course, women's-only, summer classes
- Live schedule with real seats left, FULL badges & waitlists
- Book and pay in a minute: courses, special events, women's memberships, single classes, vouchers
- Real seat locks with timed holds; scarcity shown only when it's real
- SEO, schema & GA4 wired in
๐ฏ Growth Engine
Every enquiry from every source. One pipeline.
- Instant auto-reply + staff lead alert
- Stages: New โ Contacted โ Booked โ Member
- Every lead shows its whole journey: contacted, paid, trained, member. Paid and trained update the stage on their own
- Email & SMS from the card, full timeline, inbox sync
- Google reviews on autopilot: happy regulars get one polite ask, a few a day, plus a scan-to-review screen in the gym
- Instagram and Facebook from the front desk: photos, designed promo cards and video Reels, posted now or scheduled
๐ Warrior Mindset Schools
The schools programme, run properly.
- School enquiries from mindsetwarrior.academy land in their own pipeline: new, contacted, visit booked, converted
- Cohorts, parent consent, medical info and attendance per school
- Kept fully separate from gym members and leads
๐ฅ๏ธ Gym App (desktop)
Mission control at the front desk.
- Members, rolls, attendance, reports
- One-tap payment reconciliation
- Self-updating via release channel
๐ Staff Web Portal
The whole gym app, from any browser, full parity, by law of the house.
๐ฅ Grading
Belts and grades, tracked instead of guessed.
- Per-discipline ladders: BJJ belts, kickboxing, kids tabs, Muay Thai Khan progress grades
- Ready, Close and Not yet lists built from real attendance since the last award
- Coaches award from their phone; every grade lands on the member's record
๐ Sign-in Kiosk
Members check themselves in.
- Regulars quick sign-in (last weeks' attendees)
- NFC keyfob tap-in ยท day & payment rules enforced
๐จโ๐ฉโ๐ง Family & Members
Parents run their family from one login.
- Self-service parent signup, children auto-linked
- Bookings, attendance, payment status
- Multi-day kids on one flat membership
๐ณ Payments
Stripe subscriptions, one-off checkouts with webhook confirmation, Apple & Google Pay, gift vouchers. Every payment lands on the member record, not a spreadsheet. A paid course place books all six weeks onto the coach's roll by itself, and anyone who only wants one Saturday buys that week on its own at the drop-in price, with the roll showing which week they paid for. Turn up on the day without booking and staff take the drop-in on the roll itself, cash or card terminal, one tap, recorded like any other payment. Members run their own payments from their login: pay by card, set up monthly billing or a standing order, see the family's history, cancel without a phone call. Card renewals record themselves and portal requests land on the desk app's home screen. Someone trains but the payment gets missed? The desk sends a WhatsApp pay link and the money books itself against that exact session.
๐ง Smart Coach
The big screen runs the class: full-screen Class Mode with timed blocks, an exercise stepper the coach taps through, birthday shout-outs, a Warrior of the Day crowned from the coach's phone and put up on the big screen with a staff fob tap, and the phone as the remote. After a PT session the coach taps what was covered and the recap writes itself, ready to edit, straight into the member's login. Technique clips too: an adult member opts in with one QR scan on the mat, the coach records short clips, and the member watches or deletes them in their own login. Circuits classes get their own board: the coach types the circuit on their phone and the whole grid fills the screen, with a work and rest clock that runs the room. After a kids class the coach opens the roll on their phone, scores each child's session and leaves a note, and the parents see it in their own login. The kiosk updates itself overnight.
๐ค Atlas AI Coach
AI chat and training plans in the member's own login, switched on by membership type. It knows what the coach has each member working on. Quick Reps puts the Smart Coach camera on the member's phone: prop it up, it counts squats, push-ups and swings, and the set saves straight into their training history. All vision runs on the phone, no video is ever uploaded.
โ๏ธ Comms Engine
Authenticated email (DKIM), SMS with a daily-cap circuit breaker, welcome & reset flows, bulk-safe.
๐ฌ WhatsApp
The gym's WhatsApp number, run properly.
- Enquiries answered in seconds by an AI that knows the real timetable and prices, and hands over to a human the moment it matters
- Booking confirmations and next-day class reminders, one message per family, not one per child
- The churn radar: a regular goes quiet for two weeks while still paying and gets one friendly check-in before they drift away. Capped at one per member per quarter
- Staff inbox with the full conversation history; opt-outs and quiet hours enforced on every send
๐ซ Schools Programme
Cohorts, sessions and dashboards for school partnerships: separate login, same engine.
๐ท Finance
QuickBooks-light behind a PIN: bank imports that learn their own categories, monthly money across every revenue stream with the paying-member mix, P&L, coach pay from classes actually delivered, vending profit after stock. A live break-even board shows who really pays, with one family payment counted across the whole linked household, and exactly how many members the gym needs. A Stripe view pulls every card payment straight from Stripe, fees included, and flags any subscription payment the records missed.
๐น๏ธ Warrior Games
The kids arcade on the big touch screen. Blue team against red team with two slam buttons on the mats: relay races, reaction battles and tug of war, with scores, sounds and a winner splash. Every game is a drill in disguise, and the whole class fills a season-long progress bar together. Runs on the gym PC even with no internet and updates itself from the web.
๐ฅ Coach 1-1s
A shared mat diary for the coaches: phone or the gym PC, both mats, clash-checked against classes and each other. When the gym sends a coach a personal training lead from the website, the coach books the slot and the client gets a card pay link on WhatsApp. Paying confirms the session, the money splits between coach and gym automatically, and the payout owed to each coach sits in Finance with a settle button. Coaches' own clients stay their own business.
๐ Analytics
GA4 traffic tile on the dashboard, internal surfaces filtered out. Decisions on real numbers.
What a normal day looks like on the Engine
Mum finds the site
Googles "kids martial arts Crosby" โ lands on the Kids page.
Enquiry โ lead
Form submitted. Auto-reply in seconds; staff email fires.
Coach replies
One click in the pipeline, email logged on the timeline.
Trial booked
Capacity-checked. Class full? Waitlist + alternative day offered.
First session
Kiosk sign-in; child appears on the coach's roll instantly.
Joins as member
Payment tracked monthly; parent portal shows it all.
Comes back
Next week she's in "Regulars", one tap and she's on the mat.
Foundations you never have to think about
Full audit across auth, secrets, injection & GDPR surface; database locked down. Check-in refuses to run anywhere but the gym's own devices.
Capacity maths, waitlists, payments and family links proven on every build.
Website, portal and app each ship in minutes, with secrets stripped automatically.
DKIM-authenticated domain; resets and alerts that actually arrive.
Postgres in production. Every surface reads and writes the same truth.
Big tap targets, kiosk-proof flows, works on the gym PC, a phone or a browser.