SafeSpace equips users with an emergency button, which when pressed, sends out an SOS to other nearby users to request immediate assistance. In these emergency situations, a quick response time is crucial in preventing escalation. Rather than having to wait for the arrival of 911 services or campus police, students in danger can get assistance promptly from nearby peers. The alert pins the location of the vulnerable student on a map, allowing other students to easily locate and respond to the threat.
We employed Google's Flutter development kit to create the application. Flutter provides developers with a variety of libraries, including the Firebase Messaging API, which we used to send push notifications. When the user launches the app for the first time, we make a POST request to the back-end server and store the device's token. If that user ever uses the button, we identify their location and we make another POST request to the server, providing data that can be used to locate that user. We then make an API call to the firebase messaging API and send a push notification to all nearby devices. These notifications will contain the location, which we then use to pin the location on a map (provided by the Google Maps API). The back-end was developed using Python and a Flask server to handle the POST requests and store the data.