Inspiration

We were inspired by the experiences of multiple group members with various issues taking the bus in elementary school, and we wanted to build the kind of app that we wish we could have had to provide information about routes and timing during those times.

Especially, the shared experience of missing school bus, nice to have feature for students, staying ahead of the bus routes, no automated report on the bus location for students to know when to leave the house.

What it does

BusBuddy is an iOS App that tracks assigned school busses in real time, designed for students of all ages. Students are able to see their bus route, the current location of their bus, and the estimated time of arrival of the bus at their stop.

How we built it

Tech Stack

  • Swift (UI + MapKit)
  • Supabase (PostgreSQL DB + PostgREST)
  • Auth0 (JWT Authentication)

We utilized Auth0 to authenticate our users login credentials, Supabase to create a PostgreSQL database to store data about bus routes and close to real-time locations, and created a mobile iOS application using Swift. To provide map functionality and location tracking, we also used Apple MapKit.

Challenges we ran into

Initially we wanted to make an "organization agnostic" app, that could be re-used in different pick-up/drop off for any private academy or sports clubs that might be interested in running a "student" only transit route, Sunday church buses even, but that type of solution would've taken much longer time to think out and design & develop, so we decided to focus in on more focused demographic.

Within the given time constraints, we struggled to figure out how to demonstrate real-time location tracking of a bus for our live demo as well as for testing the functionality of a real bus route. We also faced challenges when thinking about the target audience and theming, when considering the wide range of ages of users that may be using the app, which led to focusing in on the school bus theme.

Accomplishments that we're proud of

The top navigation bar component with expanding animation was a difficult but worthy endeavour, as we feel that the functionality and looks were both very well done in the end. We were also very proud of our integration with MapKit in a short amount of time, as well as finishing an functional application within the 36 hour time frame while working collaboratively as a team.

What we learned

Throughout this project, we learned a lot about how to increase our efficiency as a group by relying on each other's strongest skills in order to achieve as much as possible in a short amount of time. Similarly, we learned how to better acknowledge our own weaknesses, and get better at asking others for their help on the things that we find more challenging.

What's next for Bus Buddy?

Driver App

In the future, we would like to be able to implement the bus driver-facing side of the application, to enable real-time location tracking and accurate time estimates for students.

More Features!

We would also like to be able to add in service disruption alerts, as well as provide options and suggestions for students who have missed their bus to be able to catch up, or find an alternative ride.

Built With

Share this project:

Updates