/transit_tracker

A React (MERN) stack app that allows you to get predictions for a stop/station from the Washington, DC metro.

Primary LanguageTypeScript

Transit Tracker

A React (MERN - Mongo, Express, React, Node) stack app that allows you to get predictions for a stop/station from a transit agency. Right now this app just has the WMATA - Washington, DC area transit system. More will be added soon.

Live Demo

https://transit-tracker.craigstroman.com/

Instructions for running locally:

Available commands:

  1. npm run start - Starts the production version of the server.
  2. npm run live:client - Starts the development environment for the client.
  3. npm run live:server - Starts the development environment for the server.
  4. npm run scss - Builds the CSS for the server views and watches for changes.
  5. npm run copy-files:server - Copies files needed for production server build.
  6. npm run prod:client - Builds the production client.
  7. npm run prod:server - Builds the production version of the server.

Types of transit as defined by GTFS:

0 - Light rail - Streetcar, light rail. 1 - Heavy rail - Subway, Metro. Any underground rail system. 2 - Rail - Commuter rail, etc. 3 - Bus - Used for short and long distance bus routes. 4 - Ferry - Used for short and long distance boat service.

Version History

Version 3.0.0
  • Started using TypeScript
  • Upgraded React and switched to using React Hooks
  • Switched to using Redux Toolkit
  • Switched to using @react-google-maps/api
  • Updated server methods
Version 2.0.0
  • Upgraded WebPack, Babel, and Eslint.
  • Switched to DotEnv.
  • Added hot reloading using Express as the server.
  • Added Prettier.
Version 1.5.0
  • Various fixes to the client.
  • Upgrading Axios.
Version 1.4.0
  • Fixed issue with WMATA subway stations not loading in order of stations.
  • Fixed issue with WMATA subway predictions not showing all predictions for a selected direction.
Version 1.3.0
  • Upgraded version of React and React-Dom being used.
Version 1.2.0
  • Added Google maps for busses so you can see where buses are on the route.
  • Increased the refresh rate for predicitions.
  • Added bus route and position controllers for WMATA.
Version 1.1.0
  • Added sass-resources-loader to share variables and mixins in SCSS.
  • Fixed the responsive break points for the option colums.
Version 1.0.0
  • Setup server and started to setup the local API.
  • Added WMATA to the local API.
  • Created React client interface using Redux to get data and update client.
  • Using React Select control for the dropdowns.
  • Using Bootstrap and SCSS for the CSS.