Inspiration
There are always cases on a college campus where a drunk female is often taken advantage of during parties or when they are roaming about at night. To tackle student betterment, we wanted to reduce such instances from occurring on college campuses so no one will have to get traumatized from an experience like that.
What it does
The user starts by setting up the app where they have to create a security network of close friends and family. They input the names and phone numbers of anyone they want to be contacted in an emergency. Once the network is finished, the app simply acts as an emergency button to press. If in danger, press one button, and the app will automatically send everyone in your security network messages with your current location along with a message that you are in danger and require help. You have 10 seconds after clicking the emergency button to cancel it by typing in your password.
How we built it
The app UI and core logic was built with flutter with REST API, DynamoDB, and Google Maps API used to build the backend. The user login is done with a REST API with a POST request taking in username and password as input and HTTP response providing a unique token for the account. This unique token is then used as the partition key for DynamoDB and acts as the account id. For each account id, the database stores all the attributes for each contact in the security network. I once again use HTTP requests to retrieve and add data to the DynamoDB database and simply use a flutter plugin called flutter_sms to send the messages. To send the current location, I use Google Maps API's live location tracking to get the current coordinates and use that to send the location.
Challenges we ran into
Some challenges include getting the live location tracking to send over SMS and retrieving data from the DynamoDB database.
Accomplishments that we're proud of
We are proud of the UI and user experience of the app. The goal was to make the app as simple to use as possible since the user is most likely to be intoxicated when using the app since that's when sexual assault or rape is most likely to occur.
What we learned
How to integrate DynamoDB with flutter and how to use live location tracking with the Google Maps API.
What's next for Moolight
Make features to give updates on the user's location once the emergency button is pressed in case the user moves from the initial location which was sent in the messages.

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