Commutr: points for walking, biking and transit, with a voice seal that runs the app
This is a submission for the MLH x DEV Writing Challenge What I Built Commutr is a web app that rewards people for replacing car trips with walking, cycling and transit in Kitchener-Waterloo. Our prompt at CommuniHacks was to gamify alternatives to driving. We started from Sweatcoin (track your steps, earn points, redeem rewards) and asked why it should stop at walking. I built the backend and my…
Commutr is a web application that rewards users for choosing active transportation options like walking, cycling, and public transit over driving. Developed for the CommuniHacks hackathon, Commutr builds upon Sweatcoin's step tracking and reward system, expanding the gamified experience to include other modes of transport.
The app verifies each trip using GPS data sent from the user's phone. Trips are scored based on distance, mode of transport, confidence in the data, and a trust multiplier, with a daily limit on the total score. Walking earns 10 points per km, cycling 6, scooters 4, and transit 12. The system flags unlikely trips, such as unrealistic speeds or suspicious patterns, and assigns no points to these.
Live transit data is incorporated, showing real-time GTFS-Realtime feeds for Kitchener-Waterloo's buses (Grand River Transit) and ION. A mascot named Muta serves as the app's assistant, allowing users to interact via text or voice. Muta can help users plan trips, redeem rewards, and navigate the app.
The backend computes optimal walking, cycling, and transit routes while Gemini, running on the Flash-Lite model, assists in selecting the best option using a function calling approach integrated with live transit data. Route safety is assessed using pre-generated ratings from photos collected from Mapillary. While the demo routes are deemed safe, this is an estimate rather than a guarantee.
Places are suggested based on distance from the user's home, with real locations returned sorted by proximity to the requested walking distance. If no suitable spots are found, the app informs the user rather than inventing a location. Users can interact with Muta through spoken commands, which trigger actions within the app. Function calling ensures the actions proposed are validated before execution.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.