Overview

A Teachable Machine image model run fully client-side with TensorFlow.js on a live webcam feed or dropped photos. It flags phone use, sounds an alarm and logs an exportable CSV audit trail.
The problem
Spot phone use during an exam and keep an attendance record, without sending video to a server.
How it works
I trained an image model in Google Teachable Machine to tell a student who is present apart from one using a smartphone, then ran it with TensorFlow.js directly in the browser.
There are two ways in: point a webcam at the room for continuous detection, or drop in photos for a batch check. When a phone is detected the room status flips from normal to alert, a warning siren plays, and the student is marked absent in the roster.
Everything is logged with timestamps and can be exported as a CSV for the attendance and malpractice record. Because the model runs on the device, no video ever leaves the computer and there is no server to maintain.
What it does
- Live webcam detection with an FPS counter
- Photo inspection: drag and drop for batch checks
- Normal / alert room status with a Web Audio siren
- Adjustable detection confidence threshold
- Timestamped activity log and one-click CSV export
- Runs 100% in the browser: no video leaves the device
Built with
- TensorFlow.js
- Teachable Machine
- JavaScript
- Web Audio API
In numbers
6-class model, alerts only above 70% confidence, 30+ FPS on-device
Try it live
The live version opens in a new tab, so you can explore it at full size.
Open SmartRoom Proctor AI ↗