Everyday on my way to work / downtown, I have a few routes that I can take. Usually, I take the quickest route via I-24 but this isn't always the best. Sometimes there are unexpected accidents or hazards that makes the other routes better. I absolutely hate it when I'm caught in a jam that I could have avoided otherwise (I wish something would have alerted me!). Now Google Maps does a good job of showing Red segments where traffic occurs. However, many times I don't really trust it because there's not a lot of proofs. Also, accessing route information isn't the fastest.

Another factor is the availability of Smart Signs data. "In states where similar traffic management systems have been employed, crashes have been reduced by an average of 30 percent and the road capacity has increased approximately 22 percent." source:

The Messages are real-time alerts in response to recent road events. It's a rich source of helpful tips that could assist in my decision to take which routes.

What it does

Reroute is a tool to check fresh local travel and safety information quickly in a few steps. The mobile app enables anyone to access recent data for a given route from multiple sources such as traffic cameras, incident reports, construction zones, speed sensors, and crime locations. The goal is to inform travelers with the best route and conditions to get to their destination efficiently and safely. Great for any travelers including drivers, bicyclists, and even pedestrians.

Simply enter an address or place and a comprehensive newsfeed is generated specifically for a unique route. For quick access later, save any route and destinations to pull up the newsfeed again instantly. So for my next commute to work, I can just check for problems in only 1-2 taps.

What is truly unique about Reroute is the types of information that is presented in a "newsfeed" UI that everyone is familiar with. Currently, there's not a faster way to retrieve Messages and Crimes data on a route in a feed like this.

How I built it

With special permission, data are collected from MDOT on an interval in the background. All the cameras, incidents, constructions, and messages are refreshed regularly. Especially for Detroit, Michigan DOT has done a great job of establishing a robust traffic camera system that covers a wide area. Routes from point A to point B are generated using Google Maps. Then using a unique algorithm, every data point is returned for a specific route within a short proximity and with consideration for the heading of north, south, east, or west. This is to ensure that an incident on Southbound I-24 doesn't show up if you're going Northbound I-24 to help cut down false positives.

After some online hunting, other data points were added to the feed including Crime reports (updated daily) and Bike Rack locations compiled from multiple sources. This is to show how more data can easily be integrated as more becomes available. Currently, Reroute supports Tennessee and newly added Michigan but more cities are coming soon.

Challenges I ran into

Getting good live data is difficult. Most providers like Waze and Trafficland protect / commercialize their information. So in order to get free access from DOT, a lot of data processing is required.

Accomplishments that I'm proud of

I'm very satisfied with the route algorithm to filter only the relevant information for a route in a given direction. I was also excited to have incorporated crimes data into the feed.

What I learned

This model can be applied to other cities as many DOTs across the country release data for cameras, constructions, and smart signs. There's still improvements to be made to inform travelers to choose the best route to reach their destination safely.

What's next for Reroute

  • In the immediate future, more data such as weather, events, gas prices, bike theft, and parking can be added right away. All of these factors greatly influence a route.
  • In the pursuit of quick access, route alerts and Voice access (Alexa and Google Home) to approach 0 taps. It just does it for you.
  • Add more cities with open data
Share this project: