This repository now contains two application generations:
- The original Django/Python implementation in the existing
spybotandSpybot2packages. - An in-progress Spring Boot + Kotlin rewrite in
spybot-core,spybot-web, andspybot-recorder.
The Spring rewrite uses Spring MVC, Spring Security, jOOQ, Flyway, and JTE templates, while preserving the current PostgreSQL schema for the first release.
spybot-core: shared query layer, domain models, security principal, Flyway baseline, and jOOQ generation config.spybot-web: MVC app, JTE views, REST endpoints, security config, and scheduled jobs.spybot-recorder: dedicated recorder process scaffold for the TeamSpeak listener.
This project uses uv as a Python package manager.
To install all dependencies, first make sure that you are using Python 3.11. Then install uv using pip install uv.
Then install all project dependencies using uv sync.
Execute uv add mydependency, then commit the files pyproject.toml and uv.lock.
We use ruff for code formatting. The code style is enforced in pull requests.
To install the pre-commit hook, use pre-commit install.