From dadda8765d2e90cf204fe7abcb76b8d742f370ea Mon Sep 17 00:00:00 2001 From: type-two Date: Tue, 7 Jul 2026 14:46:12 +1000 Subject: [PATCH] Easy Mode: big-control page for non-technical users MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit easy.html: giant start/stop, plain-word sliders (how fast / how big / how loud), friendly sound names (Ocean/Beep/Click/Knock), big color dots, duration chips, live preview strip of the patient view, same safety notice. Auto-connects to the relay when served over http with a persistent random room id — patient link is one big copy button, no Detect IP step. Advanced panel untouched, linked both ways; server opens easy.html first. Co-Authored-By: Claude Fable 5 --- README.md | 24 +++-- easy.html | 269 +++++++++++++++++++++++++++++++++++++++++++++++++++++ index.html | 5 +- server.py | 2 +- 4 files changed, 290 insertions(+), 10 deletions(-) create mode 100644 easy.html diff --git a/README.md b/README.md index 4cf8a93..425574c 100644 --- a/README.md +++ b/README.md @@ -23,20 +23,28 @@ fancy lightbar, this is the backup plan. ## Quick start -**One computer, two screens (easiest — nothing to run):** -1. Open `index.html` in a browser. This is the therapist panel. -2. Click **Open Patient View**, drag that window to the patient-facing +**Easy Mode — start here.** `easy.html` is a big-buttons control page for +non-technical users: one start button, plain-word sliders (how fast, how big, +how loud), friendly sound names, a live preview of what the patient sees. +The full control panel (`index.html`) is one tap away under "Advanced +controls". + +**One computer, two screens (nothing to run):** +1. Open `easy.html` in a browser. +2. Tap **Open patient screen**, drag that window to the patient-facing display, make it fullscreen. 3. One click on the patient view unlocks audio (browser rule). **Two devices on the same Wi-Fi:** 1. Double-click `start-relay.command` (Mac) or `start-relay.bat` (Windows), or run `./start-relay.sh` (Linux). Needs only Python 3 — no pip, no - installs, no internet. It serves the app and the session relay in one - process and opens the therapist page for you. -2. Click **Detect Local IP** — the patient join link is auto-copied. -3. Open that link on the patient device; one tap unlocks audio. -4. Allow the firewall prompt (private networks) if one appears. + installs, no internet. It serves the app and the relay in one process and + opens Easy Mode for you. +2. Easy Mode connects to the relay automatically — tap **Copy link for + patient's phone / tablet** and open it on the patient device; one tap + there unlocks audio. (The advanced panel's Detect Local IP flow still + exists too.) +3. Allow the firewall prompt (private networks) if one appears. ## The therapist panel diff --git a/easy.html b/easy.html new file mode 100644 index 0000000..b672463 --- /dev/null +++ b/easy.html @@ -0,0 +1,269 @@ + + + + + + backnforth — Easy Mode + + + + + + +
+

backnforth

+
Set it up, press start, watch the patient — not the screen.
+ + + + +
00:00
+ +
+ +
🐢 🐇
+
+
+ +
+ +
+
+ +
+ +
+ + + + + +
+
+ +
+ +
+ + + + + +
+
🔈 🔊
+
+ +
+ +
+ + + + +
+
+ + + + + Advanced controls → +
+ + + + + diff --git a/index.html b/index.html index 2dbe776..64a06ba 100644 --- a/index.html +++ b/index.html @@ -46,7 +46,10 @@ 👁️ Open Patient View - + diff --git a/server.py b/server.py index 83b0a02..417e984 100644 --- a/server.py +++ b/server.py @@ -233,7 +233,7 @@ def main(): threading.Thread(target=wsd.serve_forever, daemon=True).start() if '--no-browser' not in sys.argv: try: - webbrowser.open('http://%s:%d/' % (ip, HTTP_PORT)) + webbrowser.open('http://%s:%d/easy.html' % (ip, HTTP_PORT)) except Exception: pass try: