Getting started
Configure
Development workflow
| Service | How to iterate |
|---|---|
status-dashboard | cd status-dashboard && npm install && npm run dev |
status-panel | Edit server.py, then docker compose restart status-panel |
analytics | Edit tracker.py, then docker compose restart analytics |
liquidsoap | Edit radio.liq, then docker compose restart liquidsoap |
nginx | Edit nginx.conf, then docker compose restart nginx |
Code style
- Python —
ruff check analytics/ status-panel/(config inpyproject.toml) - TypeScript —
npm run lintinsidestatus-dashboard/ - Shell —
set -e, 4-space indent, double-quoted variables - Dockerfiles — must pass
hadolint
Submitting a pull request
- Create a branch from
main(git checkout -b feat/my-feature) - Keep each PR focused on a single feature or fix
- Run linters locally before pushing
- Fill in the pull request template completely
- Reference any related issue with
Closes #123
Adding environment variables
If your change introduces new environment variables:- Add them to
.env.examplewith a sensible default or blank value - Document them in the configuration table in
README.md
