Inspiration
We noticed that traveling between airports and college campuses is often disorganized. Students at Caltech approach this using shared spreadsheet, but this doesn't scale very well. We wanted to create a system which makes finding people to split rideshares with easier, which in turn reduces the number of cars on the road and cuts down on carbon emissions. We also hoped to design our project to be easily applicable whenever large quantities of people travel to and from the same destination, such as on college campuses and at events.
What it does
AutoMatch creates carpools by allowing a range of starting/ending locations to be specified. Whenever there are overlapping ranges, users are given the option to accept the match and share a ride with the other person. If they both choose to do this, a start/end location shared by both users is automatically chosen and a chat window is opened to allow for further communication. AutoMatch respects users' privacy by not revealing identities until there is a match, and by avoiding using exact starting/ending locations.
How we built it
The frontend of this webapp was made with Svelte and TypeScript. The map utilities were created using Leaflet and OpenStreetMap. The webapp communicates with a Node.js server using WebSockets, allowing for realtime updating and communication between users.
Challenges we ran into
Neither of us had used Svelte before, so that was an interesting challenge to learn. We also tried to stick to using as few dependencies as possible in order to create a project with minimal overhead.
What's next for AutoMatch
- Login with identity verification, which would allow for more trust between users when deployed in specific contexts such as at a university
- Plan future rideshare carpools using the same UI and matching algorithm, which would greatly improve the use cases and chance of finding a match
Built With
- neovim
- openstreetmap
- svelte
- typescript
- websockets
Log in or sign up for Devpost to join the conversation.