Admin & Teacher Handbook — v1.0
Fill in the fields below and save.
| Field | Example | Notes |
|---|---|---|
name | Oakwood Primary | Full school name |
slug | oakwood-primary | Lowercase, hyphens only |
license_tier | full | core / full / trust |
max_players | 200 | Max students across all classes |
license_expires | 2026-08-31 | Leave blank for no expiry |
Enter the teacher's email address. They'll receive a link to set their password.
Once invited, click on the user in the list and copy their UUID (looks like a1b2c3d4-...).
Link the auth user to the school.
| Field | Value |
|---|---|
id | Paste the UUID from Step 2 |
school_id | Paste the school UUID from Step A |
display_name | Mrs Smith |
role | teacher |
Go to /arcade/teacher/ → enter email and password.
Enter the class name (e.g. "Year 5 Tigers") and year group.
A 6-character code is auto-generated (e.g. TIGER5). This is what students enter at login. You can click it to copy.
Click on the class card to open the student list.
Type the student's alias — a fun name like Blue Falcon or Star Fox 7. No real names.
A 4-digit PIN is created automatically and shown in a popup. Write it down or print the class credential sheet. This is the only time the plain PIN is shown.
Give them: Class Code + Alias + PIN.
Open any game or the main arcade page.
A login panel appears on the game's intro screen.
Class Code (e.g. TIGER5) · Alias (e.g. Blue Falcon) · PIN (4 digits)
XP, badges, and session data are recorded to their profile.
| Task | Who | Where | Type |
|---|---|---|---|
| Onboard a new school | Arcademy Admin | Supabase Dashboard | Manual |
| Create a teacher account | Arcademy Admin | Supabase → Auth + teachers table | Manual |
| Create a class | Teacher | /arcade/teacher/ dashboard | Self-serve |
| Add a student | Teacher | /arcade/teacher/ dashboard | Self-serve |
| Reset a student PIN | Teacher (or Admin) | Delete player → re-add (PIN resets) | Manual |
| View student progress | Teacher | /arcade/teacher/ dashboard | Self-serve |
| Export session data | Teacher / Student | In-game "Save Evidence" button | Automatic |
| Deactivate a class | Teacher | Teacher dashboard → toggle Active | Self-serve |
| Renew a school licence | Arcademy Admin | Supabase → schools → update license_expires | Manual |
| Field | Format |
|---|---|
| their@school.com | |
| Password | Set via invite link |
| Login URL | /arcade/teacher/ |
| Field | Format |
|---|---|
| Class Code | 6 chars e.g. TIGER5 |
| Alias | e.g. Blue Falcon |
| PIN | 4 digits e.g. 7391 |
Must be exact — 6 characters, case-insensitive. Confirm in teacher dashboard.
Must match exactly (spaces matter). "Blue Falcon" ≠ "BlueFalcon".
4 digits only. If unknown, delete and re-add the student to generate a new PIN.
After 10 failed attempts in 60 seconds the login locks for 1 minute. Wait and retry.
Supabase → Table Editor → teachers. The teacher's auth UUID must have a matching row here with the correct school_id.
Supabase → Authentication → Users → find user → send reset email.
Progress only saves when a player token is active. The game intro should show their alias.
Open DevTools (F12) → Console. A 401 or RLS error means the session token has expired — log out and back in.
Sessions last 8 hours. After a full day, students need to log in again.
Each alias must be unique within a class. Try a different alias.
Check school's max_players in Supabase → schools table. Increase if needed.
Arcademy Admin Handbook · v1.0 · Updated March 2026