Each member of our team lives in a major city worldwide, and we see on a daily basis the rising number of people using personal vehicles (as people are slowly moving back to cities rather than staying in suburbs) while many forms of public transit are not used to their full capacity. With a steadily rising global population, this will lead to higher pollution levels globally and more traffic, which leads to people taking longer to get to their destination and in the process contributing even more to global air pollution.

What it does

We believe that more public transportation is the key to lowering gas-emissions worldwide while also being a reliable option to get people from point A to point B. However, with that rise in population, it is important to be able to accommodate more people on city buses, hence the need for 1) more buses, and 2) the ability to track areas with high human traffic to deploy said buses to those locations. Essentially, the app calculates the density of traffic at bus stops throughout the city of London and allows for operators to see where more city buses need to be deployed based on the route people are traveling. If there are more buses available, then more people are less likely to use personal vehicles as more buses means more space and cheaper travel to their destinations.

How I built it

We wrote a Python script to load the CSV file into Firebase and to see if the specified bus stops exist in the dataset. We then used Node and Express to develop the back-end. This allowed updating and pulling data on/from Firebase. The front-end was written using React to query the data that was retrieved in the back-end to get traffic density at specified bus stops on specified bus routes as well as to display the bus routes and density heatmap on the map.

Challenges I ran into

Since most of the team was new to product development with Javascript, it was a steep learning curve for us all. We had to learn how to use and deploy Node.js on the spot as well as linking the front-end that uses React with the Firebase database and the Node back-end. Since it was a new experience using Javascript, we struggled with understanding promises and how they work.

Accomplishments that I'm proud of

What we're most proud of is that we were able to develop a working product though each team member was in a different location worldwide and working on different time-schedules.

What I learned

We are proud of learning a good amount of the required Javascript knowledge fast enough to deploy the product as we each had little to no prior experience with it.

What's next for God Save Transport

There are many expansion possibilities for this project. For now, we were only able to use data from London but if other major cities have datasets similar to this, we can expand this to anywhere else in the world. We can also expand the application to analyze not just city bus traffic, but also trains/metro systems. We can use AI and ML to track and predict passenger activity and traffic to make better predictions as to where extra buses need to be deployed. With predictive analysis, the usage of this product can be more efficient and accurate.

Share this project: