Customize RepRoom for your coaching company. Configure via Netlify environment variables.
Branding is configured in your Netlify environment variables and served through the session config endpoint.
These fields are read-only and reflect the current live configuration.
Configure via Netlify → Site settings → Environment variables.
📦 Active Module
Module Configuration
Each module is a self-contained coaching environment. The active module is configured server-side. Use the Module Upload section above to update scripts and content.
Type a trainee's name below. It will appear on the welcome screen: "Brad's pick this week: [name]". Clear it to remove.
This Week's Leaderboard
Top 10 trainees by XP this week. Full view includes session counts.
XP & Level Stats
Aggregate stats for the active module's trainees (this device).
📋 Script Library
Built-in Scripts
Default placeholder scripts. Replace Day 1 and Day 2 with Brad's exact scripts using the upload section below.
🗣️
Day 1 — New Patient Consultation
Placeholder · 16 lines · Replace with Brad's script
Built-in
📋
Day 2 — Report of Findings & Close
Placeholder · 22 lines · Replace with Brad's script
Built-in
⚡
Shituations Library
12 scenarios · Google Doctor, Skeptical Spouse, Price Shopper, and 9 more
Built-in
Load Brad's Scripts
Paste the script text below or upload a JSON file. Use the simple line format or the full JSON format. The uploaded script replaces the placeholder for the selected type.
📁
Drop a JSON or TXT file here, or click to browse
— or paste script text below —
Scripts saved to browser localStorage
Simple Script Format
Use this format when pasting Brad's scripts. Each line starts with a speaker tag.
CONTEXT: Patient is seated in the consultation room.
DOCTOR: Hey [Patient Name], I'm Dr. [Your Name]. Thanks for coming in today.
PATIENT_CUE: Patient responds to greeting.
DOCTOR: So tell me — what's been going on?
PATIENT_CUE: Patient describes their chief complaint.
CONTEXT: Doctor conducts examination.
DOCTOR: I want to get some X-rays before I give you my full picture.
DOCTOR: The doctor's lines — these appear in the script guide panel and are scored. PATIENT_CUE: Stage directions for the AI patient — tells it what kind of response to generate. CONTEXT: Scene context visible to the doctor but not "said" aloud.
🎭 Characters (V2)
9 Animated AI Patients
Each character is automatically assigned to their matching scenario. THE CLOWN appears only at Expert difficulty.
Voice Preview — plays a sample of each character's assigned ElevenLabs voice.
Requires ELEVENLABS_API_KEY set in Netlify environment variables. Characters use gender-matched voices by default;
elderly characters (Harold) use the age-appropriate voice variant.
⚡ Difficulty Reference
Difficulty Level Calibration
How each difficulty level affects AI patient behavior. Calibrated for the RepRoom scoring engine.
Receptive
Starting moodWarm
Objections1–2
Close signalObvious
ForgivenessHigh
Best forDay 1 training
Skeptical
Starting moodGuarded
Objections2–4
Close signalSubtle
ForgivenessMedium
Best forDaily practice
Resistant
Starting moodDefensive
Objections4–6
Close signalHidden
ForgivenessLow
Best forShituations
Expert 🤡
Starting moodHostile
Objections6+
Close signalBuried deep
ForgivenessNone
UnlocksTHE CLOWN
THE CLOWN achievement — Close The Clown 3 times at Expert to unlock the
"YOU CLOSED THE CLOWN 🤡" badge and full-screen rainbow confetti explosion.
The Clown is a legitimate chiropractic patient (52-year-old circus professional, chronic back pain) who happens to be in full costume.
📦 Module Content Upload
Upload Script or Content File
Upload JSON files to override built-in scripts, Brad-isms, or mental floss lines.
Uploaded content is stored server-side and served to all authenticated users instantly.
📄
Click to select a JSON file or drag and drop here
Active Server Overrides
These uploaded files override the bundled defaults for all users.
⚠ Reset
Reset Script Library
Clears all custom scripts from browser storage and restores built-in placeholders. This cannot be undone.