Inspiration
The devastating impacts of natural disasters and conflicts are often compounded by the immediate collapse of critical communication infrastructure. Law enforcement and aid organizations lose all visibility, resulting in delayed and misplaced rescue efforts. Our app is driven by the mission to bridge this gap, ensuring that help can find the vulnerable even when traditional cellular networks fail.
What it does
Type Int's "Type Rescue" project creates an ad-hoc, resilient mesh network using standard smartphone hardware.
P2P Relay: The mobile app uses Bluetooth Low Energy (BLE) to send small data packets (location, battery status, and questionnaire answers) from phone to phone.
Location Clustering: These relayed messages eventually reach a functioning internet gateway and are sent to a cloud database.
Prioritized Dashboard: The Law Enforcement Dashboard displays these locations in real-time, allowing operators to identify high-density clusters of victims and prioritize individuals based on their questionnaire response and time-series battery monitoring.
Pinpoint Location: As a secondary function, the app is designed to emit a noise/beacon when a First Responder is near a specific victim, enabling rapid, precise physical location.
How we built it
We used a full-stack approach focused on resilience and real-time visualization:
Mobile Mockup: The team created a specification and mock-up for the Kotlin Android/iOS application, outlining the BLE mesh networking protocol and data structure (JSON payload).
Backend: A modular Python Flask API was built using the MongoDB database for flexible, time-series storage of location pings. The backend handles data buffering (in-memory storage during network outages) and syncs it every 5 minutes. For the sake of the demo, we made it around 10-15 seconds.
Frontend: A modern React.js dashboard with Leaflet.js for mapping provides law enforcement with a clear, interactive visual interface. We implemented a dedicated API endpoint and logic for Time-Series Battery Trend Analysis to quickly flag users at risk of losing power.
Database Structure: The MongoDB schema was specifically designed to handle GeoJSON for spatial querying and store all historical pings for trend analysis.
Challenges we ran into
We had to tackle real-time resilience and data-driven prioritization:
Data Aggregation: Determining the single most relevant location from potentially hundreds of redundant, relayed pings required careful logic to select the most recent, highest-accuracy data point.
Decoupling the Backend: Splitting the monolithic Flask file into modular components while maintaining the single, critical data buffer required careful state management
Being able to communicate with the front end of the law enforcement dashboard, as well as at the same time communicating with the phones
Accomplishments that we're proud of
BLE: Being able to use the Bluetooth low energy was a huge development for us, and it taught us a lot about how mesh networks work
Resilient Data Pipeline: Successfully designing and implementing the in-memory buffer in the Python backend, ensuring that high volumes of location pings are never dropped, even if the database temporarily slows down or goes offline during peak events.
Modern Tech Stack: Delivering a cohesive, high-performance solution using Python, MongoDB, and React with complex geospatial mapping.
What we learned
We learned the critical difference between data logging and data actionability. Also, we learned how to architect a backend to be both performant and scalable.
What's next for Type Int
Automated Hotspot Clustering: I really want to Implement a future clustering algorithm on the server to automatically define and highlight dense victim clusters, dynamically updating the map without requiring manual analysis by operators.
First Responder Routing: Develop a real-time routing layer that suggests the most efficient path for a first responder to reach the highest-priority cluster of victims, factoring in known obstacles.
Two-Way Communication: Integrate a low-bandwidth messaging feature to allow law enforcement to push simple text updates back into the mesh network.
Also, we want a way to make it so that as soon as a disaster is detected through the phone, it asks you via audio if you are alright or not




Log in or sign up for Devpost to join the conversation.