Inspiration

We noticed that whenever there were off-campus club activities, there was always a large number of people in need of rides to get to the venue. Event organizers would do their best to assign drivers for each rider through messy group chats, but the process was often manual, time-consuming, and inefficient. Many times, drivers had to take longer detours to pick up riders who other nearby drivers could have picked up. This led to unnecessary delays and confusion, which often resulted in frustration for both drivers and passengers. With VroomMates, we wanted to centralize and automate the planning of carpools by creating a solution that optimizes rider-driver assignments. The goal was to make the process of organizing rides easier and more efficient for both event organizers and participants. The idea of using technology to solve this common issue inspired us to create a tool that not only streamlines the ride-matching process but also minimizes detours and travel time, making it a win-win for everyone involved.

What it does

VroomMates is a carpool management system that centralizes the process of organizing carpools for events. It allows users to register as drivers or riders, input their locations and destinations, and automatically match riders with drivers based on optimal routes. VroomMates uses A* for pathfinding and linear distance using the Haversine Formula to cluster the drivers. This reduces unnecessary detours and streamlines transportation logistics.

How we built it

VroomMates was built using a full-stack approach. The front end was developed with React, leveraging the Google Maps API for location input, tracking, and map displays. The back end was powered by Flask, where Python handled the clustering algorithms to generate optimized driver routes. These routes were stored in Google Datastore, allowing users to save and resume their sessions across devices. We implemented continuous deployment with GitHub Actions and hosted the app on Vercel to streamline development and updates.

Challenges we ran into

One of the biggest challenges we encountered was creating the Post and Get functions for Flask. Since we modularized the entire project and everybody worked on different parts simultaneously, we saved the Flask implementation for the very last. Even though we were sure that all the parts worked independently, connecting the backend operations to display on the front end proved to be messier than we anticipated.

Accomplishments that we're proud of

We are proud that our program works.

What we learned

The hackathon prize is the friends we made along the way.

What's next for VroomMates

Add functionality for live contribution between drivers and riders for the same map. Support the ability to add a desired arrival time and VroomMates will give routes that takes current traffic conditions into consideration.

Oh, and IPO as a trillion-dollar company.

Built With

Share this project:

Updates