Skip to content

v1.2.0 — Guided Onboarding & Smarter Calibration

Choose a tag to compare

@HugoFara HugoFara released this 11 Mar 22:03
· 17 commits to main since this release

This release focuses on making Peekr easier to use out of the box, with a redesigned UI and a much more robust calibration pipeline.

Peekr screenshot

Highlights

  • Guided 4-step onboarding — The demo page now walks you through Load Model → Start Tracking → Calibrate → Validate, with a status badge and visual progress indicators.
  • Better calibration — The assisted calibration now uses a 9-point grid (3×3) with 30 averaged samples per point, fitted via multi-start gradient descent. This replaces the previous 4-point single-sample approach.
  • Validation step — After calibration, you can now measure prediction accuracy against held-out points. Reports per-point error, mean error (px and % of screen diagonal), and directional bias.
  • Gaze recording — Record gaze data during tracking and export it as CSV for offline analysis.

All Changes

Added

  • Guided stepper UI with status badge (idle / loading / ready / tracking / calibrating)
  • Calibration validation step measuring prediction error and bias
  • 9-point calibration grid with 30 averaged samples per point
  • Multi-start gradient descent optimizer for calibration parameters
  • Gaze recording panel with CSV export
  • 18 unit tests for calibration math (Vitest)

Changed

  • Tracking dot is green when in-screen, red when out of screen
  • X/Y coefficients merged into a single "distance to screen" parameter
  • Complete CSS rewrite: card-based layout, step indicators, dark-themed log
  • Improved calibration algorithm with better MSE fitting
  • DOM layer cleanly separated from core logic

Fixed

  • Model constants reverted to correct values (MODEL_DIST_X = -270, MODEL_DIST_Y = 350)
  • Kalman-filtered values now correctly used during calibration

Full Changelog: v1.1.0...v1.2.0