
Web & Mobile Development
Emergency Response Dispatch
Overview
A city-wide emergency reporting and dispatch platform for Zamboanga City. Citizens report an emergency in a few taps from a mobile app, dispatchers coordinate the response from a live web dashboard, and the nearest available units are sent and tracked in real time until help arrives.
The Problem
Emergency reports typically arrive through phone calls and text messages, with no shared view of where incidents are happening or who is available to respond. Dispatchers had to relay locations by hand, responders had no reliable way to receive and acknowledge assignments, larger incidents needing several teams were hard to coordinate, and there was no record of response times to learn from. Prank and false reports also tie up responders, but blocking unknown callers is not an option when a real life may be at stake.
The Solution
We built a three-part system on a shared Supabase backend. A React Native (Expo) app lets citizens report incidents with their GPS location and follow their report's status, and lets responders receive, act on and close out assignments. A Next.js dashboard gives dispatchers a live incident map with nearest-unit suggestions powered by PostGIS, and lets them send several units to one incident with a lead and support roles. To discourage false reports without ever blocking a real emergency, citizens can verify their identity with a government ID: dispatchers see a trust badge on every report, ID photos are deleted once reviewed, and repeated false reports lead to suspension. A public landing page explains the service, lists emergency hotlines and links to the Android app, with privacy and terms pages written for the Data Privacy Act. Supabase Realtime keeps every screen in sync, email OTP handles sign-in, and row-level security keeps each role limited to the data it needs.
What We Delivered
- Citizen incident reporting with GPS location, plus a My Reports screen with live status
- Live dispatcher dashboard with an incident map, heatmap and new-incident alert sound
- Nearest-unit suggestions using PostGIS
- Multi-unit dispatch: several units per incident, with lead and support roles
- Responder app with incoming assignments, status updates and job history
- Citizen ID verification with trust badges; reports are never blocked, false reports count as strikes
- Verification results emailed through a Supabase Edge Function and Resend
- Admin area for users, responders, ID verifications and settings
- Reports page with response-time breakdowns, incident trends and CSV export
- Public landing page with emergency hotlines, app download, and privacy and terms pages
- Optional biometric app lock on mobile
- Real-time updates via Supabase Realtime and push notifications through Expo Notifications
- Email OTP authentication with role-based access via row-level security
Client
Personal
Platform
Web & Mobile
Type
Personal Project
Status
In Development
Tech Stack
Live Project
Visit Live Site