A way to get bus routes via both OCCT and Broome county buses in binghamton (or both)
Find a file
2024-02-18 11:41:16 -05:00
BBB_frontend code done demoing for video 2024-02-18 11:41:16 -05:00
migration giving up on db schema in favor of prototyping 2024-02-17 16:21:59 -05:00
src code done demoing for video 2024-02-18 11:41:16 -05:00
.dockerignore frontend is coming toegether just need to put it all toegether 2024-02-18 01:09:12 -05:00
.gitignore finished the basic api as far as building is concerned but might be buggy 2024-02-17 22:26:33 -05:00
Cargo.lock code done demoing for video 2024-02-18 11:41:16 -05:00
Cargo.toml code done demoing for video 2024-02-18 11:41:16 -05:00
docker-compose.yml stalled on docker nginx curfuffle 2024-02-18 03:02:19 -05:00
Dockerfile stalled on docker nginx curfuffle 2024-02-18 03:02:19 -05:00
README.md code done demoing for video 2024-02-18 11:41:16 -05:00

BinghamtonBetterBus

There are 2 parts to this app, backend and frontend which are built with different commands. cargo build in the root directory will build the backend and npm run build in the BBB_frontend directory will build the frontend, run the backend and host the frontend with your preferred method of hosting static files and you're up and running.

In future I intend to improve the deoployment experience and madke it non-local by dockerizing things but when I tried during the hackathon I hit a cryptic nginx error.

to run you need a file called GOOGLE_API_KEY in the dir the app is run in which has access to the routes api (if you're nice you'll also replace the google api key in the frontend for google maps)

TODO:

  • show lines for broome county buses
  • Make buttons change color to indicate toggle
  • Prevent buses from going backwards
  • make time estimate accurate (beyond hack divide by 3)
  • Change api to give a not shitty poly line for Broome county buses
  • Trim poly lines down to the bit between bus stops
  • Fix the UI so console and alert aren't needed
  • refactor to work within docker and setup within docker-compose
  • make route checking more advanced with better walking heuristic (ideally taking the river into account)
  • make route checking more advanced by allowing multiple factors with multiple weights including
    • walking time (don't remove it)
    • bus travel time
    • layover time (both waiting for the initial bus and any intermediary buses)
    • ultimate arrival time
  • make route checking allow for specifying a future time
  • use a DB via SeaORM to avoid spaming APIs
  • use info in db to try and predict bus schedules in future