Demo Mode
This page documents what administrators see when using the Admin Console in demo mode. Demo mode provides a safe sandbox for exploring administrative features without affecting production data.
What is Admin Demo Mode?
When you switch to the Admin role in a private demo, you enter a restricted version of the Admin Console. Demo admins are identified by their email pattern (@demo.com or @demo.local) and are automatically scoped to their demo tenant's data.
Key point
Demo mode gives you a taste of the Admin Console with access to Users, Audit Logs, and basic health monitoring. Operational features like Metrics, Queues, Workers, and Retention are only available in the full production console.
For the full private demo experience (role switching, mock data, demo control bar), see the Private Demo Walkthrough.
Visual Differences
Header
The Admin Console header displays "(Demo)" after "VivaEdu Admin" to clearly indicate you are in demo mode.
Navigation
The side navigation is reduced from 12 pages to 4 pages. Operational and infrastructure pages are hidden.
What You Can Access
Demo admins have access to 4 pages that demonstrate governance and user management features.
| Page | Route | What You See |
|---|---|---|
| Overview | /admin | Database, Redis, and Storage health tiles. Worker config. Recent LTI launches (scoped to demo). Incidents summary. Workers summary. |
| Users | /admin/users | Demo users table (demo tenant users only). Create user, Reset links, Revoke sessions. |
| Audit logs | /admin/audit-logs | Full audit log viewer (scoped to demo tenant). Filters, Export CSV. |
| Account settings | /admin/account | Personal account settings for the demo admin user. |
Users Page
The Users page shows only users belonging to your demo tenant. Each user displays their demo tenant ID and time until expiry.
| User | Role | Demo Tenant | Expires | Actions |
|---|---|---|---|---|
Demo Teacher demo-teacher@demo.com | TEACHER | demo_a1b2c3d4 | 1h 42m | |
Demo Student demo-student@demo.com | STUDENT | demo_a1b2c3d4 | 1h 42m | |
Demo TA demo-ta@demo.com | TA | demo_a1b2c3d4 | 1h 42m | |
Demo Admin demo@demo.com | ADMIN | demo_a1b2c3d4 | 1h 42m |
Audit Logs
Audit logs are fully functional in demo mode, but scoped to your demo tenant. You can filter, search, and export logs to CSV. All actions you take during the demo (creating vivas, switching roles, viewing student data) are logged and visible here.
For detailed audit logging documentation, see Governance.
What's Hidden in Demo Mode
Eight pages are hidden from demo admins. These pages contain operational or infrastructure-level features that require production access or would not be meaningful with demo data.
| Page | Route | Why Hidden |
|---|---|---|
| Metrics | /admin/metrics | Operational metrics require production data to be meaningful. |
| Queues | /admin/queues | Queue management is infrastructure-level and shared across all tenants. |
| Workers | /admin/workers | Worker monitoring is infrastructure-level and not tenant-scoped. |
| Incidents | /admin/incidents | Incident management is infrastructure-level and shared across all tenants. |
| Retention | /admin/retention | Retention policy configuration affects real data and requires production access. |
| Integrations | /admin/integrations | LTI platform configuration is institution-level and not demo-scoped. |
| LTI | /admin/lti | LTI setup and registration is infrastructure-level configuration. |
| Compliance | /admin/compliance | Compliance documentation is institution-specific and not relevant to demos. |
Note: If you attempt to navigate directly to a blocked page (for example, by typing the URL), you will be automatically redirected to the Audit Logs page.
Demo Isolation
Each private demo creates an isolated "bubble" with its own unique tenant ID. This ensures complete data isolation between demos.
- Unique tenant ID: Each demo is assigned a unique
demoTenantId(for example,demo_a1b2c3d4). - Data scoping: All data created during the demo (users, classes, vivas, audit logs) is tagged with this tenant ID.
- Query filtering: Database queries automatically filter by tenant ID, so demo admins only see their own data.
- No cross-contamination: Multiple concurrent demos cannot see each other's data.
What Gets Scoped
- User accounts (teacher, student, TA, admin)
- Classes and enrollments
- Assignments and viva sessions
- Student responses and recordings
- Audit log entries
- LTI context records (if any)
Demo Data Lifecycle
2-Hour Timer
Each demo session lasts 2 hours from creation. A countdown timer is displayed in the demo control bar. When the timer reaches zero:
- You are automatically logged out
- The demo cleanup worker marks your tenant for deletion
- All demo data is permanently deleted within 15 minutes
Automatic Cleanup Process
The demo cleanup worker runs every 15 minutes and deletes expired demo data in a specific order to respect database foreign key constraints:
| Step | What Gets Deleted | Includes |
|---|---|---|
| 1 | Teacher Responses | Instructor video feedback recordings |
| 2 | Responses + S3 files | Student audio/video recordings and transcripts |
| 3 | Questions + prompt videos | Viva questions and instructor prompt videos |
| 4 | Viva Sessions | Session records linking students to assignments |
| 5 | Essays + S3 files | Student essay uploads |
| 6 | Question Pool Items | Question bank items and prompt videos |
| 7 | Assignment Question Pools | Links between assignments and question pools |
| 8 | Assignments | Viva assignment configurations |
| 9 | Enrollments | Student-class enrollment records |
| 10 | LTI Contexts | LMS course context records (if any) |
| 11 | Classes | Course/class records |
| 12 | LTI Users | LMS user identity records (if any) |
| 13 | Users | Teacher, student, TA, and admin accounts |
Cleanup verification
Demo cleanup is logged in production audit logs (with a system actor). Administrators can verify that cleanup occurred by searching for demo tenant IDs in the audit log. No orphaned data remains after cleanup.
Key Points
- Demo is a sandbox: Nothing you do in demo mode affects production data.
- Scoped to tenant: Demo admins only see data from their own demo bubble.
- Reduced access: Operational pages are hidden intentionally to focus on governance features.
- Temporary: Everything is automatically deleted after 2 hours.
- Training tool: Perfect for learning the Admin Console interface safely.
Related Topics
- Private Demo Walkthrough →Full demo experience with role switching
- Admin Console →Full admin console documentation
- Governance →Users, audit logs, and retention policies
Comments
Leave a comment, question, or feedback. Comments are public — please don’t include personal data.