๐Ÿ’ก Motivation The idea for this project came from a common problem in many communities: delays in emergency response. i wanted to build a solution that empowers citizens to request help in real time and ensures the closest available police officer is alerted instantly. With rising urban safety concerns, i envisioned a platform that bridges this gap using technology.

๐Ÿ› ๏ธ Method i built a real-time emergency alert system using:

Frontend: React Native (Expo) for both the citizen and police apps.

Backend: Node.js with Socket.IO to enable real-time communication.

Location Tracking: Leveraged device GPS to send coordinates at intervals and upon request.

Matching Algorithm: Used the Haversine formula on the backend to calculate the nearest officer to a user in need.

Communication Flow:

Citizens press a โ€œHelp Meโ€ button.

Their location is sent to the backend via Socket.IO.

Backend identifies the nearest officer and sends them a real-time alert.

Police receive the alert and can track the user's location immediately.

๐Ÿ“š Mastery Through this project, we gained a deeper understanding of:

Managing real-time socket connections effectively.

Implementing geospatial algorithms like Haversine for distance calculation.

Structuring full-stack applications using clean, modular code across frontend and backend.

Working with mobile GPS APIs and handling permission flows in production-level apps.

๐Ÿšง Challenge The biggest challenge i faced was integrating the backend with real-time updates from the police officers. Ensuring that the backend accurately received, stored, and updated each officerโ€™s live location at regular intervalsโ€”and then used that information dynamically to calculate proximity to emergency requestsโ€”required careful design and debugging.

Despite this, i overcame the issue by implementing a clean socket-based location-sharing mechanism and maintaining an in-memory store for online officers.

What's next for Help_Now_India

i will optimised the tract feature more and make it public

Share this project:

Updates