This project is a comprehensive, enterprise-level attendance management system designed for IIIT Kota, featuring a TypeScript backend and a Flutter frontend. The system uses
Bluetooth Low Energy (BLE) and QR codes to handle attendance, with a platform-adaptive architecture to manage differences between Android and iOS. The backend, built with Hono, manages user roles (admin, faculty, student, dean), classrooms, courses, and attendance sessions, authenticating users via Google OAuth restricted to the
iiitkota.ac.in domain. The Flutter application provides separate interfaces for students and faculty, implementing platform-specific logic: Android devices use BLE advertising and listening, while iOS devices primarily listen and use QR codes as a fallback due to platform limitations. A significant part of the project involved researching and implementing
BLE collision management strategies, such as extended advertising intervals and staggered device grouping, to ensure reliability in a dense environment with over 200 devices