IQVerIQVer

Built for the way schools actually work

Every feature, by who uses it.

IQVer is one platform with four doorways — admin, teacher, proctor, and student. Below is the launch-ready feature set for each role, plus the operational pieces that hold them together.

The MVP checklist, line by line

What schools ask for — and where IQVer delivers it

  • Integrates with school websites

    Every class has a copy-paste <iframe> snippet (frame-ancestors 'self' by default) for WordPress, Google Sites, any CMS.

    Teacher dashboard → Embed in your school site

  • Supports online classes

    One-click Jitsi Meet room per class. No API keys, no per-seat licensing, unlimited users.

    Teacher session view → Live class (Jitsi)

  • Lets teachers share activities

    Assignments, links, resources, announcements — posted from teacher view, visible everywhere students land.

    Teacher session view → Class activities

  • Students join via QR code

    Auto-generated PNG QR links to /join/[code]; same QR appears inside the iframe embed so parents can scan from a phone while the embedded page runs on desktop.

    Teacher session view + Embed page → Join from a phone (QR)

  • Polished, launch-ready, MVP

    Three role dashboards, real-time monitoring, recordings to cloud storage, 90-day auto-delete, mobile + dark mode, OAuth optional.

    Everywhere — see the rest of this page

  • Validates the core business hypothesis

    Real shared cloud database (Vercel Blob), per-deploy health probe, CSV exports for audit, embedded admin ops panel.

    Admin → System health & ops

ProctorGuard-style capability map

Exam proctoring checklist — what ships today vs. roadmap

AreaIn this build
1. Authentication & accessEmail/password, admin user form, session cookies, OAuth for teachers; Proctor role at /teacher.
2. DashboardOverview cards: sessions, active, 7d events, integrity alerts; activity chart.
3. Class managementSessions + join codes + embed; formal LMS enrollment is roadmap.
4. Exam managementTimed web exam (?duration=), demo questions, submit + timer events; wizard UI roadmap.
5. Monitoring setupJitsi iframe permissions; guided device wizard via readiness page.
6. Candidate readinessDedicated /join/[code]/readiness — network, browser, camera & mic checks before exam.
7. Secure exam UISticky timer, progress, fullscreen action, question nav, tab-leave warnings + events.
8. Anti-cheat / AIRule-based integrity events + uploads; no ML behavior scoring yet.
9. Live monitoringSession timeline polling, Jitsi live class; dedicated multi-tile grid roadmap.
10. Incidents & alertsSeverity labels (High/Med/Info) on events; dashboard 7d alert count.
11. Recording managementBlob uploads, per-session list, retention cron — export polish optional.
12. Session reviewEvents + recording links; unified replay timeline roadmap.
13. AnalyticsCharts + CSV exports; deeper violation analytics roadmap.
14. User managementAdmin CRUD; roles: admin, teacher, proctor, student.
15. System settingsCSP, cron cleanup, ops panel; configurable policy thresholds roadmap.
16. UI / UXDark mode, responsive cards, sidebars — consistent across dashboards.

For admins

Run your whole org from one console

Proctor role

Monitoring-only accounts see every session, integrity alert counts, and severity-labeled timelines — they cannot create sessions, post activities, or end rooms.

User management

Create, view, and remove admin / teacher / proctor / student accounts. Roles are enforced at every API endpoint.

Organisation overview

Snapshot of every active session, ended session, total monitoring events, and account counts by role.

Live activity feed

Combined timeline of everything happening across the deployment — events posted, classes started, exams ended.

Identity providers

Optional Google or Microsoft Entra (Office 365) sign-in, with email/domain allow-lists for teachers.

Durable storage

Vercel Blob for app data + recordings, with a local-file fallback for development. No DB to maintain.

Retention controls

Recordings auto-delete after 90 days. Run cleanup on demand from the admin console — auditable cron logs.

For teachers

Sessions, video, activities, monitoring — together

Sessions in seconds

Type a title, hit create. IQVer generates a unique join code, a Jitsi video room, and a printable QR.

QR + share links

Project the QR on a screen or share /join/[code]. Students land on a class page with everything they need.

Live online class

Embedded Jitsi Meet room per session. No API key, no separate scheduler. Open in a tab or on the dashboard.

Class activities

Post exams, assignments, links, resources, or announcements. Visible on the join page, embeds, and the LMS.

Real-time monitoring

Every join, visibility loss, upload, and lifecycle event is timestamped. The dashboard polls automatically.

CSV export

One-click export of every monitoring event for a session — perfect for audit, analytics, or your registrar.

For students

Join a class in seconds, on any device

Quick join

Scan the QR with your phone camera, or type the 6-character code. No setup, no install for the class page.

Recently joined

Your portal remembers the classes you opened on this device, so you can rejoin in one tap next time.

Live class on any device

Join the Jitsi room from a phone, tablet, or laptop browser. No desktop install required for class.

Secure exam mode

When a real proctored exam starts, install IQVer Exam (Windows / macOS) and use the same join code there.

Privacy by default

Recordings, when collected, auto-delete after 90 days. Recently-joined classes are local to your device.

Activities at a glance

Assignments, links, and announcements from your teacher are visible on the class page — no extra app.

Behind the scenes

The plumbing that makes it production-grade

School-site embeds

Drop /embed/class/[code] into any iframe — WordPress, Google Sites, Moodle, Canvas. Frame-ancestors defaults to 'self'.

Scheduled retention

Vercel Cron hits the cleanup endpoint daily; admin can also trigger it on demand for compliance reviews.

Mobile-first UI

Every page is responsive. Dark mode is automatic, the QR pages render perfectly on a phone.

Four-role product

Admin, teacher, proctor, and student flows with server-side permission checks; proctor is monitoring-only.

Launch-ready bundle

Everything below is in this build. No “coming soon” labels.

  • Four roles: admin, teacher, proctor (monitor), student
  • Unique join codes + printable QR per class
  • Embedded Jitsi Meet live class (no API key)
  • Class activities (exams, assignments, links, resources, announcements)
  • Monitoring events ingestion + per-session timeline
  • Recording uploads to Vercel Blob (direct from client)
  • Per-recording delete (DB + Blob in one call)
  • 90-day automatic retention via Vercel Cron
  • Admin: manual cleanup with custom days override
  • Admin: full-org sessions and recordings views
  • CSV export of monitoring events per session
  • School-site iframe embed (frame-ancestors 'self' by default)
  • Email + password auth with bcrypt hashing
  • Optional Google + Microsoft Entra OAuth
  • Email/domain allow-list for OAuth teachers
  • Public health endpoint for uptime monitors
  • "Who am I" endpoint for client apps
  • Mobile-first responsive UI + dark mode
  • Local dev with zero external services
  • Vercel deploy with one Blob token

Hand it to a teacher today.

Sign in as admin, create a teacher account, watch them spin up a class with a QR code in under two minutes. That's the pitch.