This is a server for the ARMA group Bourbon Warfare. It was originally created to be a backend for the BW Mission Database, but it is used for any of the groups needs.
Use your favourite Python package manager to install the requirements as laid out in
pyproject.toml. development and tests are available as extras if you want to
use additional features
Install project and all extras
uv sync --locked --all-extras --dev
Install project, but only test extras
uv sync --locked --extra tests --dev
A helper main.py function is available in the root directory to run the server locally.
Connect to localhost:8080 to see the server
The project uses Quart to manage the server. This framework requires a valid ASGI
server to run. See Quart documentation
for more information.
All server-specific configuration is contained in conf.txt. Some attributes are required,
and if not present the project will exist with a ConfigError exception.
Values are stored as key=value, and you can add comments with # comment syntax.
Some server features requires a database to run. The server is developed assuming Postgres is used, but other databases may work.
In conf.txt, the following keys are required for database connections:
db_driver: driver which is powering the database, see SQL Alchemy documentation for more informationdb_username: username which will be connected for all database operationsdb_password: password fordb_usernamedb_address: address which will be connected todb_name: the specific database which operations will be performed on