ESCAPE Seminars — QR Attendance System
The ESCAPE Seminars attendance system was built to automate registration and presence tracking for a seminar series at Politecnico di Torino. Attendees authenticate using their institutional PoliTO credentials through a SAML2 flow backed by a Keycloak Identity Provider, ensuring that only enrolled students can register — without storing passwords in the application.
The backend is a Django REST API connected to a PostgreSQL database. Upon successful authentication, the system generates a unique QR code for each session and user pair. Organizers can scan codes in real time via a dedicated endpoint, and an admin dashboard provides attendance summaries, CSV exports, and per-seminar statistics.
The development and deployment environment is fully described using Nix and devenv, making it trivial to spin up the entire stack — database, Keycloak instance, and Django application — in a reproducible shell with devenv up. This approach eliminates the classic “works on my machine” problem and simplifies onboarding for new contributors.