Inspiration
NJ Transit’s user interface can be confusing, especially for first-time riders or commuters unfamiliar with navigating New Jersey’s transit systems. We noticed a recurring problem: countless passengers were frustrated and bewildered by NJ Transit’s app and website, often leading to delays, missed trains, and overall dissatisfaction. Inspired by Rutgers’ PassioGo, which simplifies the Rutgers bus system for students, we envisioned a similar solution that would break down NJ Transit’s complexities into a user-friendly, easily navigable format. Our goal was to make NJ Transit’s live data accessible and intuitive for everyone.
What it does
KARS Transit is a real-time web application that brings clarity to NJ Transit’s train system by displaying up-to-the-minute data on train locations, routes, stops, and estimated arrival times. With our application, users can view interactive maps showing train movements, check upcoming stops, and stay informed of any delays, all from an easy-to-understand interface. By providing live updates and a visually clear layout, KARS Transit enhances the commuting experience, allowing users to plan and adjust their routes efficiently and confidently.
How we built it
To create KARS Transit, we used Python as the main programming language and Flask as the framework for building our web application. We connected to NJ Transit’s GTFS API to access real-time train and stop data, which we then filtered and displayed on our platform. Leveraging Folium, a Python mapping library, we developed an interactive map to show live train locations and stops. We designed an algorithm to process train arrival and departure predictions, which is visualized alongside the map. Finally, we used HTML and Bootstrap CSS for the front end to ensure an engaging and seamless user experience.
Challenges we ran into
One of our main challenges was managing the vast amount of real-time data from NJ Transit’s API, which required us to design efficient methods for filtering and updating data without lagging. We also faced issues with tracing out the train routes due to miniscule latitude and longitude errors. However we were able to overcome this by placing all the lat and long coordinates in GeoJSON files to get more accurate and precise locations of the tracks.
Accomplishments that we're proud of
We’re proud to have built a functional and reliable platform in a short time, especially given the complexity of handling real-time data. We successfully created an interactive map that shows train locations and upcoming stops in real time, a feature that required precise data processing and careful map design. Additionally, we were able to implement a clean, user-friendly interface that makes NJ Transit’s train system accessible to everyone, from daily commuters to new riders.
What we learned
KARS Transit taught each of us a great deal of valuable skills in data handling, real-time processing, and mapping technologies. Having to deal with this mass amount of data also taught us how to create efficient code and vastly improved our problem-solving skills.
What's next for KARS Transit
Next up, we hope to expand KARS Transit from just rail data to cover NJ Transit’s bus lines, providing a full-service solution for NJ commuters.
Log in or sign up for Devpost to join the conversation.