This is a web client for the Corvallis Bus API.
A running version of the app is available at https://corvallisb.us.
The following dependencies need to be installed globally using npm to build the app:
- TypeScript
- webpack
- SASS
- PostCSS
- PostCSS Autoprefixer
- cssnano
Then to build the app, go to the root project folder and run:
npm run build
or npm run devbuild
.
The app is designed to allow users to find bus stops on the map and see detailed arrival information for those stops.
It consists of 2 main view components:
- A Google map controlled directly with JavaScript.
- A stop details table, powered by React.js.
All the JavaScript on the page is produced by compiling TypeScript and using webpack to resolve module dependencies. TypeScript made a big difference in making the app sensical and maintainable. Styles were written in SASS and basically organized by which styles apply to React components and which styles don't.