Sign in
Single entry for citizens, responders, and operations staff. Picks the workspace each role gets when they enter.
- Three roles share one app — the next screen reshapes around who you are.
A live, role-aware map of Singapore for everyday people, trained responders, and operations staff. One map, three views, one shared truth.
Citizens get a clean, trustworthy view of what is happening near them and a one-tap SOS. Trained responders see the same map with active calls, missions to join, and an AI copilot that ranks the best mission for them. Operations staff get the full picture — incoming reports, live distress calls, the responder roster, and tools to declare incidents and broadcast to the public. Everything published to a citizen has been verified; nothing on the map is invented.
Demo accounts gate the shell. Real sign-in is stubbed in this section.
Single entry for citizens, responders, and operations staff. Picks the workspace each role gets when they enter.
Map → briefing → alerts → report → SOS. AI Kaki is an on-demand side branch from home.
Live Singapore map showing only published, trustworthy alerts plus public-data overlays (air quality, rainfall, hospitals, AEDs).
Persistent band under the top chrome showing the four live data trackers the rest of the shell depends on, plus a one-tap entry to AI Kaki. Same data feeds the map overlays and the AI context.
A short, scrollable summary of what is happening near you right now and what ops has officially confirmed.
Active incidents and community events within walking / commuting distance, sorted by proximity.
Guided four-step report flow: pick a category, drop a pin, describe what you saw, review and submit.
One screen, one tap: medical, fire, trapped, threat, hazard, or other. Sent simultaneously to ops and any suitable responders nearby.
After sending: a live status pill on the map and a step-by-step pipeline showing who is coming, when, and how to close the call safely.
A plain-language safety assistant the citizen can ask for guidance ("what should I do near the haze?", "where is the nearest AED?").
Home → mission board → join → copilot. Groups, events, log are side surfaces.
Same map, fuller picture — adds active SOS pings, fellow responders, and case-room rooms in the side panel.
Same persistent band, same chips — but the AI entry on the right goes to Mission Copilot for the responder.
Single board with the responder's current job, queued assignments, and joinable work — all in one place.
Open SOS calls and ops-formed case rooms within reach, ranked by fit (skills, distance, availability).
A responder-side AI that picks the best two missions for you right now and explains why.
Org units (SCDF East), capability cadres (AED Responders, Fire Auxiliary), and the live case rooms you belong to.
Non-emergency community work — drills, cleanups, food distribution, elderly care — that citizens or ops have posted.
A timestamped record of what happened on the responder's missions — for handover, debrief, and after-action.
Triage (reports → distress → cases → roster) → dispatch → declare/broadcast → audit (sources → log). Command copilot sits between dispatch and declare.
The full map: every report, SOS, case, and responder position. Drawing toolbox on the right for declaring zones.
Incoming citizen reports awaiting triage. Verify to publish them; dismiss to close the loop with the reporter.
All live SOS calls. Single click jumps to dispatch for that specific call.
Every active case room with severity, lifecycle state, member count, and captain.
The available workforce — who is on duty, who is busy, who is en route. Manual retasking happens here.
Picks the nearest available responder for the selected SOS or case. One tap to assign.
An ops-side AI that watches the whole picture and suggests the next move — who to send where, what to broadcast.
Manual incident declaration when ops wants to get ahead of citizens: severity, kind, optional polygon area.
Compose a short, geo-bounded public message: title, body, audience scope (citizens only, or citizens + responders).
Status board for every external data provider Kampung Kaki depends on (NEA, OneMap, LTA, MOH, etc.).
Append-only system of record. Every verify, dismiss, dispatch, declare, broadcast is captured for audit.
Presenter-only tooling, off by default, lives outside the real user journey. Seeds scenarios, flips source states, swaps roles — so a pitch can drive the citizen / responder / ops flows without waiting for live data.
Live counts per data cluster (citizen intake, incidents, operations, network, intel). Lets a presenter prove the map and the records match.
Two preset demos (minor + major) plus "send SOS as me" so the pitch can show a real flow in seconds. Reset wipes the seeded state.
Click any data source to cycle its state (fresh → stale → down → not_configured). Demonstrates how the UI degrades honestly when a provider goes dark.
Lists every role × workspace → system-prompt pairing the Host AI supports, so the team can audit which screens talk to the model and how.
The CSOT inspector right after a major seed — counts move, source health stays honest. The proof that "shared truth" is one store, not five.