Facility & Cleaning Management Platform
CleanTech
A facility and cleaning management platform with five role-based workspaces covering tasks, shifts, attendance, stock, sensors and reports, plus real-time notifications over SignalR.

Overview
A facility and cleaning management platform with a separate workspace for each of five roles: Admin, Manager, Supervisor, Cleaner and Auditor. It covers tasks, shifts, attendance and leaves, stock, sensors and feedback, with PDF and Excel reports.
My role
Frontend developer at AI Cloud. I built the platform's frontend.
Key features
- Five role-based workspaces, each with its own pages: Admin (the largest), Manager, Supervisor, Cleaner and Auditor.
- Tasks with seven statuses and three priorities, viewable as all, my, received or team tasks, plus a task calendar.
- Shifts with a shift calendar, attendance, and leave requests.
- A location hierarchy of area, city, organization, building, floor, section and point.
- Stock management with categories, materials and transactions.
- Sensors and devices with charts, and a feedback system with questions and answers.
- Reports exported to PDF and Excel for attendance, leaves, tasks, stock, transactions, sensors and feedback.
- Real-time notifications over SignalR.
- The interface works in English and Arabic, with RTL layouts.
Technical deep dive
One app, five role-based route trees
Each role has its own lazy-loaded set of routes (about 80 for Admin, 36 each for Manager and Supervisor, 9 for Cleaner, 6 for Auditor), so a user only downloads the part of the app they can use.
Interceptors
Authentication, error handling and loading indicators are handled by HTTP interceptors instead of being repeated in each screen.
Reporting
PDF reports are generated in the browser with jsPDF and tables, and Excel files with SheetJS, from the same data the screens show.
Real-time notifications with SignalR
A SignalR service keeps a hub connection open and pushes new notifications to the interface as they arrive.
Testing
The code base includes 192 unit-test files.