BinghamtonBetterBus-v2/sprints/sprint0/sprint0.md
2025-02-21 12:52:27 -05:00

2 KiB

Project Overview

Application Vision/Goal:

The two main public transit providers for Binghamton University students are OCCT and BC buses. Each provider has their own routes, schedules, and quirks, making the simple question “how do I get there” surprisingly difficult to answer, especially in a timely manner. This project will pull data from both services to get people to their destinations.

Users will be able to input a start and end location and the app will respond with a route using either, both or neither bus providers to get there.

Scope:

Allow viewing bus routes and pick start and end point and get bus route between them.

Deliverables:

Google maps which you can click on 2 points to get route between them and get a visual of the bus routes for current time.

Success Criteria:

Making something which is more functional than Spencer's HackBU 2024 project, (Video demo) hackBU project doesn't handle Broome county buses due to a bug and suggests comically bad bus routes.

Assumptions:

  • etaSPOT data is reasonably accurate
  • Broome county GTFS data is reasonably accurate
  • Google maps will continue to exist and allow for drawing of path on map

Risks:

  • if we want/need static OCCT data that will involve manual work
  • potential combinatorial explosion causing calculation to take too long

Design / Architectural Review:

Client server split maybe database

Test Environment:

Unit tests for the backend.


Team Setup

Team Members:

  • Spencer Powell
  • Levi Lesches

Team Roles:

  • Spencer: server
  • Levi: client

Team Norms:

  • handle CI for their side of the app

Application Stack:

  • Caddy for reverse proxy
  • Flutter for client
  • Google Maps API for visual
  • Nodejs + Typescript for backend
  • sqlite for db

Libraries/Frameworks:

  • JSON for api
  • etaSpot for dynamic OCCT info
  • maybe scraping for static OCCT info
  • GTFS data for static BC info