The RGS repository contains the main infrastructure for the uORocketry Ground Station.
The infrastructure is composed of the following components:
We are using a LibSQL instance for the database. The database schema is defined in SQL files (db/seed.sql) and applied via a Bun script (db/index.ts).
The infrastructure consists of several services that handle different aspects of the ground station:
telemetry-ingestor- Ingests MAVLink telemetry from rocketscommand-dispatcher- Sends commands to rockets via MAVLinkheartbeat- Service health monitoringsergw- Serial-to-TCP gateway for antenna/radio communicationgps-ingest- GPS data processingweb- SvelteKit dashboard frontendtile_provider- Map tile servinghydra_manager_daemon- Service management daemon for starting/stopping SerGW servicesdashboard- Desktop application (Wails/Go) for Linux Flatpak and Windows builds
The frontends are the components that allow the user to interact with the infrastructure. At the moment only being the web frontend.
There are a few things of interest that you might want to have running on your machine:
- Docker + Docker Compose
- The full stack can be run with
docker compose up(seedocker-compose.ymlfor all services) - The web frontend application. See its README for more information.
Quickly stopping all containers: docker compose down --remove-orphans -t 0
Rebuilding the containers: docker compose up --build
Program
"flatpak"
Arguments
run --env=CHROME_PASSWORD_STORE=basic org.chromium.Chromium --app="http://10.0.0.142/" --start-fullscreen --noerrdialogs --disable-infobars --disable-translate --enable-features=OverlayScrollbar --overscroll-history-navigation=0 --disable-pinch --ozone-platform=x11
Please refer to each of the following for more information.
sudo chown -R "$USER":"$USER" . && sudo chmod -R 0777 . chmod -R 0777 db/data