How meehhmett/smart_locker_system works
Smart Locker is a Flutter-based locker rental and administration app paired with ESP32 hardware and Firebase. The documented workflow is: a user rents a locker and associates an RFID card in the app; Firebase stores the assignment and access data; the ESP32 checks authorization on card scans, actuates the lock, and updates status and activity records. The graph preserves the app’s user, admin, profile, and RFID areas. App and firmware source were not excerpted, so relationships below rely on the README rather than inspected implementation details.
Main entry points: main.cpp ESP32 firmware · smart_locker_app.dart Flutter app · auth_gate.dart Auth gate · request_locker_page.dart Locker requests
Components 19
Flutter client
- Flutter app
lib/app/smart_locker_app.dart - Auth gate
lib/app/auth_gate.dart - Sign in / register
lib/features/auth/presentation - Locker dashboard
lib/features/locker/presentation - Locker requests
lib/features/locker/presentation/request_locker_page.dart - My locker
lib/features/locker/presentation/my_locker_page.dart - RFID account
lib/features/rfid/presentation/rfid_page.dart - Admin management
lib/features/admin/presentation/admin_page.dart - User profile
lib/features/profile/presentation/profile_page.dart - Locker models
lib/core/models/locker_models.dart - Activity records
lib/core/services/activity_log_service.dart
Firebase services
- Firebase Authentication
- Realtime Database
Locker controller
- ESP32 firmware
esp32/src/main.cpp
Physical access
- RFID card
- RC522 reader
- Servo lock
- Door / status hardware
Other components
- User / admin
Connections 22
- User / admin → Flutter app: uses
README.md - Flutter app → Auth gate: gates access
README.md - Auth gate → Firebase Authentication: authenticates
README.md - User / admin → Sign in / register: signs in
README.md - User / admin → Locker requests: requests locker
README.md - Locker requests → Realtime Database: stores assignment
README.md - User / admin → RFID account: associates card
README.md - RFID account → Realtime Database: stores association
README.md - User / admin → Locker dashboard: views status
README.md - User / admin → My locker: views rental
README.md - User / admin → Admin management: manages lockers
README.md - User / admin → User profile: manages account
- RFID card → RC522 reader: scans at
README.md - RC522 reader → ESP32 firmware: sends scan
README.md - ESP32 firmware → Realtime Database: checks authorization
README.md - ESP32 firmware → Servo lock: unlocks
README.md - ESP32 firmware → Realtime Database: updates status
README.md - ESP32 firmware → Realtime Database: writes activity
README.md - ESP32 firmware → Door / status hardware: monitors door
- Realtime Database → Locker dashboard: syncs status
README.md - Realtime Database → Locker models: provides locker data
- Activity records → Realtime Database: records actions