Create, manage, and administer ICT exams with multiple choice & fill-in-the-gap questions. Built for tech training organizations.
🔐
Admin Access
Sign in with your admin Firebase account.
⏳ Signing in…
⚙️ Firebase Auth not yet enabled
To activate secure admin login:
1. Go to Firebase Console
2. Build → Authentication → Get started
3. Enable Email/Password provider
4. Add Users → create your admin email + password
5. Come back and log in above.
Admin Dashboard
Delight Professional Digital Exams
📝 Exam Configuration
➕ Add Question
A
B
C
D
📂 Bulk Upload Questions (Plain Text / .txt or .docx)
Upload a .txt file containing multiple questions at once. Both MCQ and Fill-in-the-Gap types are supported. The manual form above still works alongside this — use whichever suits you.
📋 Recommended File Format (Plain Text / .txt or .docx)
MCQ
What does CPU stand for?
A. Central Processing UnitB. Computer Personal UnitC. Central Program UtilityD. Core Processing UnitAnswer: AMCQ
Which software is used for spreadsheets?
A. MS WordB. MS ExcelC. MS PowerPointD. MS AccessAnswer: BFILL
The shortcut key to copy in Windows is ___
Answer: Ctrl+C
⚠ Rules — follow exactly to avoid errors:
• Each question must start with MCQ or FILL on its own line
• The question text goes on the very next line after MCQ / FILL
• MCQ options must be formatted as A. option text (A, B, C required — D optional)
• The correct answer line must be Answer: A (for MCQ) or Answer: Ctrl+C (for FILL)
• Leave a blank line between each question
• Save the file as .txt (plain text) — open Notepad, type questions, Save As .txt
• Questions are added to existing ones — nothing is deleted
📁
Click to choose file or drag & drop here
Accepts .txt files only
Questions (0)
📭
No questions yet. Add your first question above.
⏰ Exam Availability Window
Set a time window during which students can access and start the exam. Once the window closes, no new exams can be started. The individual exam timer (e.g. 60 min) still applies separately per student.
No window set
▶ Open Window Immediately
📅 Schedule Future Opening
📌 Window History
No windows opened yet.
Registered Students (0)
No students registered yet.
⚠ Caution: Clears all student registrations from this device only.
Results data is stored separately and will NOT be deleted — students can still look up scores with their code.
Only do this after an exam session is fully concluded.
📊 Exam Results — All Participants
Full results with grade judgment (Pass/Fail/Grade). This tab is only visible to the admin.
Students see their score and stats only — grade judgment is withheld from the student page.
No results yet.
🔑 Student Code Lookup
Search for a registered student by name, phone number, email, or student ID to retrieve their access code. Use this when a student has lost their code and self-recovery has failed.
🚨 Student Activity Log
All page refresh incidents, code nullifications, and other flagged events are recorded here automatically.
No activity logged yet.
🔐 Admin Account (Firebase Authentication)
Your admin account is secured by Firebase Authentication — passwords are managed entirely by Google. To change your password or add another admin:
To change your admin password:
Go to console.firebase.google.com
→ Build → Authentication → Users → find your email → Reset password.
To add a second admin:
Same page → Add user → enter the new admin email and a temporary password.
🔥 Firebase Cloud Sync
Connect to Google Firebase so all student registrations, exam results, and activity logs sync to the cloud in real time — accessible from any device, anywhere.
How to get your config: Go to console.firebase.google.com → Create/Select project → Project Settings → Your apps → Add Web app → Copy the config values below.
Also ensure Realtime Database is enabled in your Firebase project (Build → Realtime Database → Create database).
🚨 IMPORTANT — Update Your Firebase Rules or Exam Window Will Not Work!
If you have not updated your Firebase Security Rules to the version below, the exam window open/schedule feature will silently fail — the window will appear to open then immediately close. You MUST paste the rules below into your Firebase Console → Realtime Database → Rules tab and click Publish.
⚠ Firebase Security Rules: Copy and paste these rules into your Firebase Console → Realtime Database → Rules tab. These rules let the signed-in admin write exam settings, while students remain read-only.
{
"rules": {
"delight_exam": {
"students": {
".read": true,
"$code": { ".write": "!data.exists() || auth != null" }
},
"results": {
".read": true,
"$code": { ".write": "!data.exists() || auth != null" }
},
"examWindow": { ".read": true, ".write": "auth != null" },
"questions": { ".read": true, ".write": "auth != null" },
"examConfig": { ".read": true, ".write": "auth != null" },
"windowHistory": { ".read": true, ".write": "auth != null" },
"activityLog": { ".read": false, ".write": true },
"refreshCounts": { ".read": true, ".write": true },
"nullifiedCodes": { ".read": true, ".write": true }
}
}
} What these rules do:
• students / results — anyone can read (needed for lobby), but each code can only be written once (no overwriting another student's record)
• questions / examConfig / examWindow / windowHistory — read-only for all users; only writable from the Firebase console by you
• activityLog — write-only for students (they log events), not readable by students
• refreshCounts / nullifiedCodes — read/write (needed for real-time anti-cheat sync across devices)
ℹ️ Platform Info
Platform: Delight Professional Digital Exams Version: 2.2 (Secured Edition) Admin Auth:Firebase Authentication — managed by Google Database:Firebase Realtime Database with Security Rules
📋
Student Portal
New student? Register below. Already have a code? Enter it directly.
🔑 Already have a code?
OR REGISTER AS NEW STUDENT
🇳🇬+234▾
Select your country flag, then type your number without leading zero
✅ Registration successful!
Your access code is:
---
Save this code — you'll need it to enter the exam and check your result later.
🎯
Exam Lobby
Verify your access code below. When you're ready, press Start Exam — the timer will begin immediately.
Verified as:
—
—
⚠ The exam timer starts the moment you click this button.
ICT Exam
⏱00:00
Question 1 of N0 answered
Delight Exam Platform
0
Correct
0
Wrong
0
Skipped
0:00
Time Used
💾 Exam Submitted & Saved
Your result has been saved securely. Use your access code below on the Check My Result page to view your full score anytime.
🔍
Check My Result
Enter your access code below, or use Forgot Code? to recover it with your registered name and phone number.
🔑 Enter the name and phone number you registered with. We'll find your code and show your result.
🔒 To protect your privacy, confirm your registered name below.
Your recovered access code:
—
📋 Your full grade assessment is available from your instructor.
📋
Exam Rules & Notice
Please read carefully before proceeding
1⏱Exam Timer
The exam timer starts the moment you click "Start Exam Now"
and will count down continuously. It will not pause for any reason —
not for network issues, accidental clicks, or anything else. Manage your time wisely.
2🔄Page Refresh — Answers Preserved
If you refresh or reload this page during the exam, your answers and remaining time are automatically saved and restored.
You will resume exactly where you left off.
✅ Network drops or browser hiccups? Simply refresh — your progress is safe.
📋 Refresh incidents are silently logged for the administrator to review.
3⛶Fullscreen Requirement
The exam must be taken in fullscreen mode. The platform will automatically
enter fullscreen when you start. You must remain in fullscreen for the entire duration.
🟡 1st fullscreen exit: A warning is displayed and the incident is logged. You will be prompted to return to fullscreen.
🔴 2nd fullscreen exit: Your exam is automatically submitted immediately, regardless of how many questions you have answered.
4🔑Your Access Code is Personal
Your access code was issued exclusively to you at registration. Do not share it
with anyone. Your result is permanently tied to your code and your registered identity.
Any misuse will be flagged in the administrator's activity log.
5🔍Lost Your Code? — Result Recovery
Your result is saved automatically when you submit. If you lose your access code,
you can still retrieve your result on the "Check My Result"
page using your registered full name and phone number — no code required.
You may also ask your invigilator to look up your code from the admin panel.
⬇ Scroll down to read all rules before continuing
⚠️
Page Refresh Detected!
Refreshing during the exam will lose your current session — your answers and timer will be reset. This is your first refresh. You will be able to re-enter the exam once using the same code, but a second refresh will permanently invalidate your code for this exam session.
🚨 This incident has been logged and reported to the administrator.
🛡️
Developer Tools Detected
Browser Developer Tools is currently open on your device.
This exam platform requires DevTools to be fully closed
before you can continue.
⏱️ Your exam timer is still counting down. Refreshing this page will not help — this block will reappear until DevTools is genuinely closed. Every second here is time lost from your exam.
How to close DevTools:⌨️ Press F12 on your keyboard⌨️ Or press Ctrl + Shift + I(Windows) / ⌘ + ⌥ + I(Mac)🖱️ Or click the ✕ close button inside the DevTools panel
⚠️ DevTools is still open. Please close it completely, then try again.
🚨 This detection has been logged and reported to the administrator.
🚫
DevTools Opened During Exam!
Developer Tools was opened during your exam. Your exam has been automatically submitted.
🚨 This violation has been logged and reported to the administrator.
Submit Exam?
You have answered 0 of 0 questions. Are you sure you want to submit?
⚠️
Reset All Questions?
This will permanently delete all 0 questions. This cannot be undone.
Your admin password and exam settings will not be affected.
⛶
Fullscreen Mode Exited!
🚨 This incident has been logged and reported to the administrator.