Skip to content
master
Switch branches/tags
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Choochoo

A PWA that gives you real-time updates of weather and train status at any MTA station in NYC.

choochoo

In my final project for the CIS2200 class I was TA'ing for I knew I wanted to make something that the students might find useful. I thought about the painpoints in my day, and being a New Yorker, the MTA instantly came to mind.

Any New Yorker could attest to the frustration of arriving at the station just for the train to be leaving, forcing you to wait tens of minutes for the next train, potentially making you late. Being someone who is obsessed with optimizing processes I came up with Choochoo, an app to display arrival times with a simple and pleasant interface while also providing the extra value of showing the weather conditions.

My biggest project yet, I wanted to get as much as I could out of the opportunity. I used it as an excuse to learn a litany of new tools and techniques, including React Hooks, Adobe XD, CSS Modules, and a bunch of asynchronous stuff. I also wrote a Node and Express backend to parse and serve the data from the MTA (boy they don't make it easy), and I set up continuous integration with Heroku.

The goal with this project, like with all my personal projects, was to learn as much as I could about best-practice front-end programming. As such, I wrote this project with zero external libraries or dependencies (outside of next-gen React with Hooks and Suspense). I wrote my own error handling input component, a debouncing hook, an auto-retrying network issue handler, and more.

I'd recommend checking out the source of the backend server to see how I battled against the MTA API to get workable data, and the entrypoint to my React frontend to see the cool tricks I used to make a lightweight and optimized PWA.

Check it out here!

About

A progressive web application that gives you real-time updates of weather and train status at any MTA station in NYC.

Resources

Releases

No releases published

Packages

No packages published