YouTube Video Demo

GitHub Repository

Inspiration

On the way back from our first night of this weekend’s hackathon, our team, consisting of all female college students, felt unsafe as we were walking home in the dark. We were also tired and would’ve loved to call an Uber or Lyft to drive us home, but we felt even more uneasy about using a rideshare app so late at night. With Uber receiving 3,824 reports of sexual assault and misconduct from 2019 to 2020, according to their US safety report, which included 141 incidents of rape, none of us were willing to take such a risk. Ideally, there would be a rideshare platform that could be thoroughly trusted. Our solution is SAFR (pronounced safer), which stands for Safe and Friendly Rides. SAFR is a community-oriented rideshare platform that prioritizes safety, especially for women.

What it does

To ensure safety for both riders and drivers, SAFR is restricted so that only students with a college-affiliated email can sign up. This allows users to feel more at ease when using the app, as others in the community are somewhat “familiar.” If someone who is not a college student attempts to sign up, they will be notified that they are unable to do so. If the user is a college student, they can continue and provide some demographic information about their school year and gender identity to enhance driver-rider pairings, which will be done randomly to ensure utmost safety for both parties. Neither the driver nor the rider will be able to choose their match. Next, the user selects their school, and then enters their email to get their account verified. Once it’s verified, they can get started!

To find a ride, a user can first input their destination. They can also have the option to turn on our special feature, “DriveHer,” which offers the ability to be matched with a female driver. This feature is exclusive to female users, so they can have an extra layer of safety during their ride. Once they confirm a location, the user can select any SAFR based on arrival time, price, and number of passengers. Once they’re matched with a driver, the user can see the license plate and car model of their driver, as well as an option to view the driver’s profile to learn more about them and ease any possible anxiety about the ride or driver. They would also have the ability to cancel the ride if they feel uneasy about the driver.

During the ride, a map will display the user’s current location en route to the destination, with an estimated time of arrival. There will also be an “I feel unsafe” button, which will call 911 after the user confirms, as a safety precaution.

Lastly, after the ride is over, the user can rate their driver, which will contribute to the driver’s profile so that other riders can gain insight about them in the future.

Overall, SAFR aims to provide a safer community for riders and drivers in the rideshare community by adding an extra layer of precautions with the need to authenticate a user’s college email in order to use the app or be a driver. Especially with the DriveHer feature, female riders can feel extra safe and wouldn’t have to worry as much about sexual assault. However, with SAFR, all drivers would need to submit valid documentation to be hired, as well as go through an extensive background check. Since they would all be students, which makes up a narrower applicant pool, background checks can be more extensive and detailed to prioritize the safety of riders. However, our app not only prioritizes safety of riders, but also drivers. Since we don’t want drivers to be targeted for being women or for their age, the DriveHer feature would only be provided for other women, and drivers/riders will always be paired randomly to prevent bias. However, even if a rider does feel unsafe during their ride, a button on the app allows them to contact the police with just a click of a button (of course, the user must confirm that they want to call 911, or cancel their action, to prevent any mistakes) to get help immediately. This also may prevent drivers with ill intentions from applying, as they may be intimidated to drive for a rideshare company that is so cautious and wary of safety issues.

How we built it

SAFR is an IOS app built using React Native and Expo. SAFR was written in TypeScript and JSX was used to define user interfaces within React Native components. Expo's map API was implemented into the application.

Challenges we ran into

This was our team’s first time doing mobile application development. None of us had any experience with React Native, let alone React, and only one team member had experience with JavaScript. In the beginning, it was difficult to set up the software necessary to start creating our application. Beyond the technical difficulties throughout this process, our group found it especially challenging to implement a movable map and create a search bar with an auto-completing drop-down menu. However, with VenusHacks’ extensive resources and Expo’s detailed documentation, we were able to build a functional app, which none of us ever expected we’d be capable of making!

Accomplishments that we're proud of

Despite the challenges we faced, with little to no experience, we were able to create a functional application with most of the main features that we planned to implement. By taking it step by step, each of our team members were able to develop their skills with JavaScript, TypeScript, React Native, and Expo. We are extremely proud of ourselves for getting this far and gaining so many skills within only 1-2 days!

What we learned

We learned how to set up an environment for mobile app development, how to use React Native and Expo, how to implement APIs, and more! All of this knowledge can be applied to future projects that we work on, so this experience was the beginning of a long yet incredible journey through software development.

What's next for SAFR

Currently, SAFR only includes colleges located in California. However, we hope to expand SAFR for all colleges, and then companies as well, with authentication based on organizational email addresses. Additionally, we hope to expand the functionalities of various buttons, and possibly implement a navigation bar on the bottom, as we gain more experience with React Native. Over time, we also hope to be able to make the UI of our app more complex by using more advanced features, which we weren’t able to do with our limited time and knowledge this weekend.

Share this project:

Updates

Submission history