During the COVID-19 pandemic, remote education exposed a painful divide: mainstream video conferencing platforms consumed upwards of 3GB of mobile data per day, putting quality education entirely out of reach for students in rural areas or low-income households.
Shikshak ("teacher" in Hindi) rethinks the online classroom from scratch. Instead of streaming video, the teacher writes on a physical blackboard while a camera feed is processed in real time by an ML pipeline (OpenCV, imutils, Canny edge detection) that detects the board's corners, isolates its surface, and converts the content into a pixel-mapped data array, achieving roughly an 85% reduction in data consumption compared to raw video. That compressed array is pushed to students in real time via Socket.IO, where the Canvas API reconstructs the board on their screen. Alongside this, WebRTC handles an audio-only channel so teacher and students stay in live voice contact without the overhead of a video stream.
I built the full React + TypeScript frontend, covering both the teacher-side calibration interface (where the board boundary is set before a session) and the student-side canvas that renders the incoming pixel stream. I also implemented the WebRTC audio integration: the trickiest part was constraining the peer connection to audio only while keeping it in sync with the Socket.IO data channel.
Shikshak won First Position at Hack This Fall 2020.


