Offline lab exam
Run an exam on your college lab network with the internet turned off. One teacher PC hosts the exam and keeps every record. Each student PC runs a small monitor next to Chrome or Edge.
Offline exam kit
To check the download, its SHA-256 is 16fe577fa94bbab5b34ff98a6443becfec883f44958472b2f2a91006b24f7f5f
What you need
- A teacher PC and the student PCs, all on the same lab network and running Windows 10 or 11. The internet can stay off.
- Chrome or Edge on each student PC. Edge comes with Windows.
- An administrator account on each student PC, used once during setup.
- A fixed address for the teacher PC. Ask lab IT to reserve one, so it stays the same from exam to exam.
Set up the teacher PC
Do this once. Your exams, results and passcode stay on this PC.
-
Download and extract the kit
Download the kit on any PC with internet and copy it to the teacher PC, for example by USB drive. If Windows marks it as downloaded from the internet, right-click the zip, open Properties, tick Unblock, then extract it to a folder such as Documents.
-
Install Python
Skip this if Python 3.10 to 3.14 is already installed. Otherwise run
vendor\python\python-3.14.8-amd64.exefrom the kit and tick Add Python to PATH. You can also download the Python installer on its own. -
Run setup
Double-click
teacher\SETUP-TEACHER-PC.batand choose a staff passcode of at least six characters. Everything it needs is already in the kit. When it finishes, it has made astudent_packagefolder.If the PC has more than one network connection, setup lists them. Run it again with the teacher PC's lab address, for example:
teacher\SETUP-TEACHER-PC.bat --ip 192.168.1.20 --port 8000
-
Allow the lab network
Double-click
teacher\ALLOW-LAN-FIREWALL.batand approve the Windows prompt. It lets PCs on the same network reach the exam. The firewall stays on. -
Start the server
Double-click
teacher\START-EXAM-SERVER.batand keep the window open during the exam. It shows a Staff page address. Open it in a browser on the teacher PC, enter the passcode and create the exam to get its code.
Set up each student PC
Do this once per PC. It stays in place for every later exam.
-
Copy the student package
Copy the
student_packagefolder from the teacher PC to the student PC, by USB drive or a shared folder. It holds your lab's own key, so keep it inside the lab. -
Install the monitor
An administrator double-clicks
INSTALL-AGENT.batand approves the Windows prompt. It shows what it changes and saves the original settings, whichUNINSTALL-AGENT.batputs back. -
Check the PC
Sign in as the student; the monitor starts by itself. With the teacher server running, double-click
SELFTEST.bat. Every check should pass; anything marked FAIL says how to fix it.
Run the exam
Before your first exam, do a five-minute practice run with two student PCs to see the whole flow once.
-
Create the exam
Start the teacher server and create the exam from the Staff page. Read out the code.
-
Students open the exam
Each student double-clicks
launch-exam.bat. It opens the exam page in Chrome or Edge. -
Students join
They type the code, their name and their roll number. Each roll number has one attempt per exam.
-
Students share their screen
They click Share entire screen & start exam and pick the whole screen. The exam opens once the screen check is running. Only one display is allowed, so unplug any second monitor first.
-
Watch the dashboard
Each PC appears as a tile. You can allow a lookup, pause monitoring, allow or deny a website or app for one student or the whole room, and end the exam for everyone.
-
Download the results
Use CSV or Excel on the dashboard for marks and the full record. Everything stays on the teacher PC.
Write the paper
Type questions on the Staff page the same way as an online exam: a blank line between questions and a * before the right answer. You can add these lines to the Questions box:
[2 marks]- At the end of a question: marks for that question.
[-0.5 marks]- Marks taken off for a wrong answer.
# Section A- Starts a section.
@shuffle- Gives each student their own order of questions and options.
@end 11:30- The whole room finishes at this time.
@extra 70572300012 15- Gives one roll number 15 extra minutes.
@allow-ml document- Open book: the screen check does not flag documents such as notes and PDFs.
@deny-app whatsapp.exe- Marks an app as not allowed before the exam starts.
@deny-site chatgpt.comdoes the same for a website.
For an exam in Jupyter, VS Code or on paper, leave Questions empty and fill in Where do students answer? The kit's README lists every option.
If something goes wrong
SELFTEST cannot reach the teacher PC
Check that the server window is open and that
ALLOW-LAN-FIREWALL.bat has been run. If the college network
blocks traffic between PCs, ask lab IT to let student PCs reach the
teacher PC on its exam port (8000 unless you changed it).
The teacher PC's address changed
Run setup again with the new address, then install the new
student_package on each student PC.
A student PC stops working during the exam
The student moves to another set-up PC and joins with the same name and roll number. After a minute the attempt moves across with the same answers and time left.
The exam page locks
It locks when screen sharing stops, a second display is connected or the monitor is not running. The clock keeps going. Fix the cause and click Restore screen monitoring; saved answers are kept.
SnapNPlan