Technology Apr 18, 2026 · 4 min read

Examlock

ExamLock Secure exams, live classroom workflows, and real-time proctor intervention. DEMO ExamLock is more than a lock screen for tests. It is a full classroom and assessment platform with: A Flutter mobile app for both students and teachers Role-based home layout...

DE
DEV Community
by Zheus Leiandre Codez Cajote
Examlock

ExamLock

Secure exams, live classroom workflows, and real-time proctor intervention.

DEMO

ExamLock is more than a lock screen for tests. It is a full classroom and assessment platform with:

  • A Flutter mobile app for both students and teachers
  • Role-based home layouts (RBAC) for student and teacher workflows
  • A web dashboard used mainly for larger-screen convenience and expanded operations
  • Shared real-time data and notifications through Firebase

What ExamLock Covers

  • Classroom management (create/join/archive classes)
  • Post workflows (announcements, files, and activities)
  • Exam creation (timer, question sheet, security settings)
  • Live proctor monitoring with lock/unlock controls
  • Submission review, auto-checking, manual essay scoring, and grade exports

Mobile App Features (RBAC: Student + Teacher)

  • Role-aware authentication (email/password + Google Sign-In)
  • Role-based routing and home layouts (student and teacher)

Student Side (Mobile)

  • Join classes using class code
  • View class stream with announcements, files, and activities
  • Take exams with countdown timer and continuous answer auto-save
  • Exam pass (exampass) before start (if required)
  • Lock passcode re-entry if exam is locked
  • Anti-screenshot support
  • Anti-copy/paste restrictions
  • Immersive mode + background detection during active exam
  • Real-time exam status sync (Good, Warning, Locked, Ended)
  • View graded results and score details
  • Notifications and unseen grade indicators
  • Archive handling for joined classes

Teacher Side (Mobile)

  • Dedicated teacher home layout with sections such as Classes, Activities, Notes, Students, Sheet, and Archive
  • Create and manage classes
  • Publish announcements, files, and activities
  • Configure exam security (antiScreenshot, antiCopyPaste, examLock, randomize, passcode, exampass)
  • Build or attach test sheets and answer keys
  • Monitor students during active exams (test room flow)
  • Review submissions and grading flows
  • Manage students, class archive, and teacher notes

Web Dashboard (Teacher/Proctor) Features

  • Web is primarily the teacher convenience layer for bigger screens and faster class operations
  • Teacher-only web login and role validation
  • Class management: create classes, share class code, manage enrollment, archive/unarchive/delete
  • Post management: announcements, file/link posts, and activity posts
  • Activity types: exam, quiz, test, assignment, homework, prelim, midterm, semi-finals, finals
  • Activity security setup: countdown, anti-screenshot, anti-copy/paste, randomize, exam lock, passcode, exampass
  • Saved sheet attachment and reusable test sheet management
  • Real-time Test Room with status cards, lock/unlock, and lock all/unlock all
  • Turn-in review with objective auto-check and manual essay scoring
  • Class record controls: category percentage weights + Excel export
  • Personal teacher notes and profile/password management

Tech Stack

Layer Technologies
Mobile (Student + Teacher App) Flutter, Dart, Material UI, flutter_windowmanager_plus
Web (Teacher Dashboard) HTML5, CSS3, Vanilla JavaScript (ES modules), Firebase Web SDK
Backend/Data Firebase Realtime Database, Firebase Authentication, Cloud Firestore
Notifications Firebase Cloud Messaging (FCM), Cloud Functions (cloud_functions/)
Hosting Firebase Hosting, Netlify scripts

Platform Architecture

ExamLock runs as a dual-client system:

  • Mobile client (lib/): student and teacher experiences under RBAC
  • Web client (web/): teacher-focused convenience interface for larger displays and extended workflows

Both clients read/write shared Firebase nodes for classes, posts, testroom status, submissions, and scores.

How to Use (Student Mobile)

  1. Sign up/login and select Student role.
  2. Join a class using the class code provided by your teacher.
  3. Open the activity/exam from your class feed.
  4. Enter exam pass if required, then start the exam.
  5. Answer questions while timer and progress auto-save run in real time.
  6. If locked, enter the required passcode to continue.
  7. Submit before timeout and review grades/results when released.

How to Use (Teacher: Mobile or Web)

  1. Login using a Teacher account (mobile app or web portal).
  2. Create/open a class, then share class code with students.
  3. Create posts:
  4. Announcement for updates
  5. File/link for materials
  6. Activity for exams/quizzes/tests/assignments
  7. For activities, set security/timer options and attach or create a test sheet.
  8. Open Test Room during live exams to monitor students and lock/unlock as needed (mobile or web).
  9. Review turn-ins, score essays, and publish/update grades.
  10. Use web for heavier convenience tasks like class record percentage setup and Excel export.

Notes

  • ExamLock is designed as a full classroom + assessment system, not only exam locking.
  • Real-time behavior depends on Firebase Realtime Database synchronization.
  • For production, enforce strict Firebase Security Rules and role-based access.
DE
Source

This article was originally published by DEV Community and written by Zheus Leiandre Codez Cajote.

Read original article on DEV Community
Back to Discover

Reading List