Total installs
--
all time
Active (30d)
--
heartbeated in last 30 days
Pending requests
--
awaiting approval
Paid installs
--
Standard + Pro + Trust
Market penetration
--%
Load GIAS data to enable
Prospect pipeline
New
--
Contacted
--
Interested
--
Demo booked
--
Not interested
--
Installed
--
By tier
Loading...
Pending & recent requests
Loading...
🔑 Issue new key
🔍 Verify key
Issued keys
Loading...
Loading...
Load GIAS data to see prospects.
💾 Data backup
Downloads a JSON backup of all critical D1 data: licences, installs, key requests, and prospect CRM notes. The GIAS school register is excluded (public data, easily re-imported).
- Licences — all issued keys and revocation status
- Installs — all heartbeating schools and CRM data
- Key requests — full history including approved keys
- Prospect notes — CRM status and notes per school
🔒 Access & security
The admin panel is protected by a shared secret. Cloudflare Access (email OTP) is planned as an additional layer — setup pending Cloudflare billing verification.
- Current auth: shared EJJ_ADMIN_SECRET (Worker secret)
- Planned: Cloudflare Access — email OTP for richard@ and steve@
- Sessions: localStorage cached, 24hr Cloudflare Access session