WebGazer.js is a webcam-based eye tracking library that infers gaze position from video input using machine learning trained on user interactions.
The library solves the problem of enabling eye tracking in web browsers without specialized hardware. It works by capturing video from a standard webcam and training a regression model on the relationship between facial features and where users are looking on screen. The model learns from implicit user interactions—clicks and mouse movements—to calibrate gaze estimation without requiring explicit calibration steps. This approach makes eye tracking accessible to web applications by leveraging the computational power available in modern browsers.
WebGazer.js suits projects that need gaze-based interaction or analytics in web environments where installing eye-tracking hardware is impractical. It works best when users have webcam access and reasonable lighting conditions. The tool is appropriate for accessibility features, user research, attention tracking, and interactive applications that benefit from knowing where users are looking. Projects should account for the fact that accuracy depends on calibration quality and environmental factors, and that privacy considerations arise from processing video data in the browser.
The project maintains an active research focus with ongoing refinements to the gaze estimation algorithm and calibration methods. Development includes regular updates to handle edge cases in facial feature detection and improvements to model accuracy across diverse lighting and camera conditions. The codebase receives attention to browser compatibility and performance optimization for real-time processing. The project sustains engagement with its academic origins through continued investigation of how user interaction data can improve tracking reliability without explicit calibration overhead.