CRM system for the automation of the municipal Lifeguard service
Task: Develop a comprehensive system for the digitalization of water rescue service processes, replacing paper reporting and manual control. It was necessary to create a user-friendly interface for smartphone use under direct sunlight and a powerful admin panel for management.
Implemented functionality:
1. Rescuer's Cabinet (Mobile-First):
Discipline Control: The start and end of shifts are implemented through scanning NFC tags at posts with mandatory geolocation and photo confirmation.
Reporting System: An extended report submission form has been developed. Dynamic addition of incidents (rescue, first aid, police call) has been implemented with complex data validation.
Finance: Transparent display of accrued salary. A "net/gross" calculation formula has been implemented with visualization of worked hours, rates, bonus points, and tax deductions.
UX/UI: The interface is adapted for one-handed use, utilizing large control elements and contrasting colors.
2. Administrative Panel and Monitoring:
Operational Dashboard: Display of active posts and statuses of rescuers in real-time.
Personnel Management: Role system (Admin, Operational, Rescuer, Trainer), staff accounting, change history.
Academy: A module for tracking candidates' performance, attendance, and standards.
Analytics: Collection of statistics on beach occupancy and the number of incidents for management decision-making.
Technical Features:
Use of Supabase for backend logic and Realtime subscriptions.
PostgreSQL database architecture with strict data types (generated TypeScript interfaces).
Optimized handling of time zones (preserving local time without unnecessary UTC conversions for reporting accuracy).
Implementation of PWA (Progressive Web App) for quick access and operation in poor connectivity conditions.
Result: A stable and scalable system has been created, allowing for a complete transition away from paper logs, automating payment calculations, and enhancing safety control on the water.
Implemented functionality:
1. Rescuer's Cabinet (Mobile-First):
Discipline Control: The start and end of shifts are implemented through scanning NFC tags at posts with mandatory geolocation and photo confirmation.
Reporting System: An extended report submission form has been developed. Dynamic addition of incidents (rescue, first aid, police call) has been implemented with complex data validation.
Finance: Transparent display of accrued salary. A "net/gross" calculation formula has been implemented with visualization of worked hours, rates, bonus points, and tax deductions.
UX/UI: The interface is adapted for one-handed use, utilizing large control elements and contrasting colors.
2. Administrative Panel and Monitoring:
Operational Dashboard: Display of active posts and statuses of rescuers in real-time.
Personnel Management: Role system (Admin, Operational, Rescuer, Trainer), staff accounting, change history.
Academy: A module for tracking candidates' performance, attendance, and standards.
Analytics: Collection of statistics on beach occupancy and the number of incidents for management decision-making.
Technical Features:
Use of Supabase for backend logic and Realtime subscriptions.
PostgreSQL database architecture with strict data types (generated TypeScript interfaces).
Optimized handling of time zones (preserving local time without unnecessary UTC conversions for reporting accuracy).
Implementation of PWA (Progressive Web App) for quick access and operation in poor connectivity conditions.
Result: A stable and scalable system has been created, allowing for a complete transition away from paper logs, automating payment calculations, and enhancing safety control on the water.