Solar Project Module List
Phase 1: Access & Identity (4 Days)
-
01. Admin & User Auth (2 Days) Secure login, and "Forgot Password" for Web and
Mobile apps.
- 1. Admin Login
- 2. Admin Forgot
Password
- 3. Admin Account
Recovery / Get Details
- 4. Team / User
Login
- 5. Team / User
Forgot Password
- 6. Team Account
Recovery / Get Details
- 7. Validate
Session (JWT/Token refresh logic)
-
02. Role-Based Access Control (RBAC) (2 Days) Permission management to ensure users
view only authorized data levels.
- 1. Create / Manage
Permissions (Backend)
- 2. Create / Manage
Roles
- 3. Create Team
User
- 4. Edit Team User
(Assign Role, Suspend status)
- 5. Delete /
Deactivate Team User
- 6. RBAC Middleware
Guards (Protect API routes based on user role)
Phase 2: PLC Management & Asset & Data Configuration (15 Days)
-
03. PLC Management (3 Days) Create, modify, and delete PLC units; configure MQTT
credentials and parameters, Add ACL Topics.
- 1. Create PLC
- 2. Edit PLC
- 3. Delete PLC
- 4. Add Topic which
this PLC can listen and publish
- 5. Generate /
Revoke unique MQTT Credentials per PLC
-
04. Visual Asset Documentation (3 Days) Upload and associate photographs with
specific PLC units for maintenance and identification.
- 1. Create an Image
Upload Interface (Cloud storage integration)
- 2. Associate/Tag
physical location photos directly to a specific PLC Unit
- 3. Image
Carousel/Gallery Viewer for Plant Infrastructure
-
05. Dynamic Data Mapping (Tagging) (5 Days) Receive JSON payload from PLC and map
key-value pairs to the Solar Plant Diagram.
- 1. Parse incoming
JSON structure from PLC MQTT Payload
- 2. Map Data Keys
to Human-Readable Labels
- 3. Assign Data
points to X/Y Coordinates on the GUI Diagram
- 4. Dynamic
Device/Icon Creation: Upload custom image via canvas, provide name & description
- 5. Select specific
pre-configured Icons/Devices to represent the mapped components
-
06. Two-Way PLC Communication (Sending Data) (2 Days) Dedicated UI and Backend
logic
to send configuration/commands back to the PLC.
- 1. Create "Write"
Interface for Administrators
- 2. Format outgoing
JSON payload per PLC specification
- 3. Execute Write
Command over MQTT / Confirm Delivery (QoS)
-
07. Alerts Threshold Mapping (2 Days) Parse dynamic threshold target values
directly from the incoming PLC data payload.
- 1. Extract
threshold limit values from PLC JSON payload (e.g., Target_Temp_Max)
- 2. Evaluate
real-time variable values against their mapped threshold limits
- 3. Trigger
warning/alert queue if value exceeds bounds
Phase 3: Monitoring & Visualization (8 Days)
-
08. Main Dashboard (2 Days) High-level KPIs showing operational status and health
of all connected PLCs.
- 1. Total Team
Users count
- 2. Total PLCs
configured
- 3. Healthy vs
Unhealthy PLC connection status
- 4. Recent Alerts /
Warnings feed
-
09. Powerplant Diagrams (GUI) (4 Days) Graphical interface showing live values and
component status overlaid on plant diagrams.
- 1. Render
background diagram with overlaid PLC device icons
- 2. Display
real-time KPI values next to related devices
- 3. Trigger UI
Alert Animations (Flashing / Color changing) when a PLC value exceeds thresholds
-
10. Dual-Mode Data Retrieval (2 Days) Supports both scheduled fetches (4x daily)
and manual "On-Demand" live triggers.
- 1. Scheduled Data
Reception: Receive and log data payloads pushed by the PLC at configured intervals
- 2. On-Demand
Polling: Send trigger command to PLC; PLC responds with the latest data payload
Phase 4: Intelligence & Accountability (10 Days)
-
11. Multi-Channel Alerts (4 Days) Real-time notifications via Mobile Push, Email,
and Admin Panel in-app pop-ups.
- 1. Admin Panel
Notifications (UI feed and pop-ups)
- 2. Email
Notifications (Integration with SMTP/sendgrid)
- 3. Mobile App Push
Notifications (Integration with Firebase/APNs)
-
12. Historical Logs Viewer (2 Days) Comprehensive record-keeping with advanced
filtering by date, station, or variable.
- 1. View PLC Data
Logs (Received Values)
- 2. View Alert Logs
(Triggered Warnings and Errors)
-
13. System Audit Trail (2 Days) Tracking of all user logins, configuration changes,
and manual system actions.
- 1. Track Admin /
Team Logins
- 2. Track CRUD
operations on Users, Roles, and Permissions
- 3. Track CRUD
operations on PLCs, MQTT Credentials, and Topics
- 4. Track
Upload/Association of Visual Assets & Dynamic Icons
- 5. Track
modifications to Alert Threshold Maps
- 6. Track
"On-Demand" Live Data Triggers & "Write" Commands sent to PLC
-
14. Reporting & Export (2 Days) Generate downloadable XLSX/CSV reports with custom
date and variable filters.
- 1. Export
Historical PLC Data for specific date ranges and stations
- 2. Filter exports
by specific Variable tags (e.g., only Inverter Current)
- 3. Export System
Audit Trail logs (e.g., Download a CSV showing "Admin Krunal changed Device #3 Threshold to
50 at 10:00 AM")
Phase 5: Performance & Mobile (7 Days)
-
15. Logs Archiving (3 Days) Background logic to archive old data and maintain
system database performance.
- 1. Implement Data
Archiving Policy (1-Year Hot Storage retention)
- 2. Automated Cron
Job to move records older than 1 year to a separate Cold Storage collection (No Deletion)
- 3. Database
indexing and partitioning optimizations for high read/write throughput
-
16. Cross-Platform Mobile App (4 Days) Fully responsive Android and iOS apps using
Capacitor to wrap the existing React Frontend.
- 1. Capacitor
Environment Setup & Core Plugin Installation
- 2. Mobile-View
Optimizations (Adapting Dashboard and Diagrams for small screens)
- 3. Native Push
Notification Integration (Firebase/APNs)
- 4. Build and Test
pipelines for Android (.apk/.aab) and iOS
TOTAL ESTIMATED
TIMELINE: 44 WORKING
DAYS