mirror of
https://github.com/benkoppe/bear-trak-backend
synced 2026-03-09 19:57:15 -07:00
No description
- Go 83.1%
- Nix 7%
- Shell 6.7%
- Nushell 1.7%
- Java 1.5%
| .github/workflows | ||
| go-server | ||
| otp | ||
| transitclock | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
bear-trak-backend
This is the backend monorepo for BearTrak!
It consists of:
go-server: The primary backend. Almost all requests go to this server.otp: Configured instance of OpenTripPlanner. Serves directions requests only.transitclock: Extended TheTransitClock, designed to consume responses fromgo-server.- Required to support
otpfor schools without available GTFS-Realtime files (umich).
- Required to support
Each service is packaged with nix, allowing uniform commands to build development shells and output builds & Docker containers:
nix develop ./<folder> --no-pure-eval # enter dev shell
nix build ./<folder>#<output> # build named output
Everything is individually deployed with Komodo on mostly Oracle infrastructure.
How to deploy
Each piece of the backend has its own nix flake and is built into its own image. See each subdirectory for more information.
Pushes to the main branch trigger a GitHub action that builds & pushes both images. Komodo pulls these images and updates automatically.