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.
Loading...
💾 Data backup
Downloads a JSON backup of all critical D1 data: licences, installs, key requests, prospect CRM notes, and feedback suggestions.
- 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
- Feedback suggestions — community board data
🔒 Access & security
The admin panel is protected by a shared secret. Cloudflare Access (email OTP) is planned as an additional layer.
- Current auth: shared EJJ_ADMIN_SECRET (Worker secret)
- Planned: Cloudflare Access — email OTP for founders
- Sessions: localStorage cached
- GitHub Issues: GITHUB_TOKEN Worker secret required for promote feature