Executive summary
A single source of truth for weather risk, operational status, and customer impact — answering what's expected, who's affected, and what to do now.
Highest-risk territories
| Territory | Risk | Score | Customers |
|---|
Risk distribution
Executive situation summary
Weather overview
Rainfall forecast from Open-Meteo (free, no key) plus manually captured PAGASA bulletins, overlaid on each facility's location. Markers also show how many open Work Orders reference that facility's Territory column.
Facility weather & risk map Tap a marker for rainfall, risk, and work-order count
Active PAGASA bulletins
Capture a new PAGASA bulletin
Territory risk heat map
Weather risk, customer density, and flood-prone history overlaid with OpenStreetMap — free, no API key.
Operational readiness
Technician availability, blocked routes, and active incidents by territory.
Technician availability
| Territory | Available | Safety | Blocked routes | Capacity |
|---|
Active incidents
| ID | Territory | Severity | Customers | SLA | Status |
|---|
Customer-impact analytics
Affected customers, SLA-risk exposure, and remote-resolution effectiveness.
Remote resolution
Top remote issue categories
Recovery and escalation
Restoration progress, estimated time to restore, and resource gaps for major incidents.
Restoration progress by incident
Recovery detail
| Incident | Territory | Restoration | ETTR | Escalation | Resource gap |
|---|
Field report
Works fully offline — reports save to this device instantly and sync automatically once connectivity returns.
Data source
Load your own operational data from a Google Sheet, a CSV file, or an Excel file — everything is read and parsed in your browser, nothing is uploaded anywhere. Imported data is saved on this device and is used instead of the built-in sample data from then on. Column headers are matched flexibly — whatever your table's structure is, close variations of the expected names are picked up automatically.
Work Orders Using sample data
Any columns are accepted as-is — this dataset adapts to your table's structure rather than the other way around. The one column it looks for is something like Territory (or Site/Facility/ Location), which is what gets overlaid on the Weather tab's map.
Facilities Using sample data
The location master list — powers both maps, the heat map, and every KPI. Needs at least a name and coordinates; columns: id, name, province, city, lat, lng, customerCount, criticalAccounts, floodProne, historicalOutageScore. If your coordinate columns aren't named "lat"/"lng", they're detected automatically from value ranges.
Technicians Using sample data
Powers the Operations tab. Columns: territoryId, available, total, safetyStatus, blockedRoutes.
Incidents Using sample data
Powers Operations, Customer Impact, and Recovery. Columns: id, territoryId, severity, affectedCustomers, slaStatus, status.
Sharing data across devices
Google Sheet imports refresh live and are shared automatically — every device that has the same sheet link entered pulls the same current data straight from Google on each load, with no extra setup. CSV and Excel uploads stay local to the device you uploaded them on — a phone and a laptop won't see each other's file-based imports unless you set up the optional shared backend described in the README. If cross-device consistency matters, prefer the Google Sheet method.
Notes on recovery & remote-troubleshooting figures
Recovery progress and remote-troubleshooting totals still come from the built-in sample data in this release — spreadsheet import for those two is a documented next step (see the README) rather than a silent gap. Facilities, Work Orders, technicians, and incidents — the data behind both maps, the heat map, and most KPIs — are fully importable today.