diff --git a/Makefile b/Makefile index db63dcc..628c71b 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ dev: $(PY) -m pip install -r requirements-dev.txt run: - $(PY) -m battleflow.cli --host $(HOST) --port $(PORT) --token $(TOKEN) $(if $(DATA),--data-dir $(DATA),) + $(PY) -m encounterflow.cli --host $(HOST) --port $(PORT) --token $(TOKEN) $(if $(DATA),--data-dir $(DATA),) test: pytest -q diff --git a/README.md b/README.md index 84603ea..cefe779 100644 --- a/README.md +++ b/README.md @@ -5,16 +5,16 @@ Refactored project layout (same features, cleaner code). ## Install & Run ```bash pip install -e . -battleflow --host 0.0.0.0 --port 5050 --token YOURSECRET +encounterflow --host 0.0.0.0 --port 5050 --token YOURSECRET ``` Open: - Admin: `http://HOST:PORT/admin?token=YOURSECRET` - Board: `http://HOST:PORT/board?token=YOURSECRET` ## Data directories -Default data folder is `battleflow_data/`. If an older `initrack_data/` exists and `battleflow_data/` isn't present, it will be reused automatically (migration-by-reuse). +Default data folder is `encounterflow_data/`. If an older `initrack_data/` exists and `encounterflow_data/` isn't present, it will be reused automatically (migration-by-reuse). ``` -battleflow_data/ +encounterflow_data/ avatars/ icons/ state.json diff --git a/battleflow/__init__.py b/encounterflow/__init__.py similarity index 100% rename from battleflow/__init__.py rename to encounterflow/__init__.py diff --git a/battleflow/cli.py b/encounterflow/cli.py similarity index 78% rename from battleflow/cli.py rename to encounterflow/cli.py index 6e20300..04310c1 100644 --- a/battleflow/cli.py +++ b/encounterflow/cli.py @@ -5,11 +5,11 @@ from .storage import ensure_default_icons, load_state from .state import STATE def main(): - parser = argparse.ArgumentParser(prog="battleflow") + parser = argparse.ArgumentParser(prog="encounterflow") parser.add_argument('--host', default='127.0.0.1') parser.add_argument('--port', type=int, default=5050) - parser.add_argument('--token', default=os.environ.get('BATTLEFLOW_TOKEN','changeme')) - parser.add_argument('--data-dir', default=os.environ.get('BATTLEFLOW_DATA_DIR')) + parser.add_argument('--token', default=os.environ.get('ENCOUNTERFLOW_TOKEN','changeme')) + parser.add_argument('--data-dir', default=os.environ.get('ENCOUNTERFLOW_DATA_DIR')) args = parser.parse_args() app = create_app(token=args.token, data_dir=args.data_dir) diff --git a/battleflow/config.py b/encounterflow/config.py similarity index 77% rename from battleflow/config.py rename to encounterflow/config.py index 8e94f00..9904dcb 100644 --- a/battleflow/config.py +++ b/encounterflow/config.py @@ -1,17 +1,17 @@ -# battleflow/config.py +# encounterflow/config.py import os -DEFAULT_DATA_DIR = os.path.join(os.getcwd(), "battleflow_data") +DEFAULT_DATA_DIR = os.path.join(os.getcwd(), "encounterflow_data") def load_config(app, **overrides): app.config.setdefault("SECRET_KEY", os.environ.get("SECRET_KEY", "dev-secret")) app.config.setdefault( "COMBAT_TOKEN", - overrides.get("token") or os.environ.get("BATTLEFLOW_TOKEN", "changeme") + overrides.get("token") or os.environ.get("ENCOUNTERFLOW_TOKEN", "changeme") ) - # Kies data-dir: override/env > default. Migreer legacy 'initrack_data' → 'battleflow_data' indien nodig. - data_dir = overrides.get("data_dir") or os.environ.get("BATTLEFLOW_DATA_DIR") + # Kies data-dir: override/env > default. Migreer legacy 'initrack_data' → 'encounterflow_data' indien nodig. + data_dir = overrides.get("data_dir") or os.environ.get("ENCOUNTERFLOW_DATA_DIR") if not data_dir: default_new = DEFAULT_DATA_DIR legacy = os.path.join(os.getcwd(), "initrack_data") @@ -32,7 +32,7 @@ def load_config(app, **overrides): os.makedirs(app.config["ICON_DIR"], exist_ok=True) # Branding - app.config.setdefault("PRODUCT_NAME", "Battleflow") + app.config.setdefault("PRODUCT_NAME", "EncounterFlow") app.config.setdefault("PRODUCT_SUBTITLE", "by Aetryos Workshop") return app diff --git a/battleflow/models.py b/encounterflow/models.py similarity index 100% rename from battleflow/models.py rename to encounterflow/models.py diff --git a/battleflow/routes/__init__.py b/encounterflow/routes/__init__.py similarity index 100% rename from battleflow/routes/__init__.py rename to encounterflow/routes/__init__.py diff --git a/battleflow/routes/admin.py b/encounterflow/routes/admin.py similarity index 100% rename from battleflow/routes/admin.py rename to encounterflow/routes/admin.py diff --git a/battleflow/routes/api.py b/encounterflow/routes/api.py similarity index 100% rename from battleflow/routes/api.py rename to encounterflow/routes/api.py diff --git a/battleflow/routes/board.py b/encounterflow/routes/board.py similarity index 100% rename from battleflow/routes/board.py rename to encounterflow/routes/board.py diff --git a/battleflow/security.py b/encounterflow/security.py similarity index 100% rename from battleflow/security.py rename to encounterflow/security.py diff --git a/battleflow/state.py b/encounterflow/state.py similarity index 100% rename from battleflow/state.py rename to encounterflow/state.py diff --git a/battleflow/static/css/board.css b/encounterflow/static/css/board.css similarity index 100% rename from battleflow/static/css/board.css rename to encounterflow/static/css/board.css diff --git a/battleflow/static/favicon.svg b/encounterflow/static/favicon.svg similarity index 100% rename from battleflow/static/favicon.svg rename to encounterflow/static/favicon.svg diff --git a/battleflow/static/js/admin.js b/encounterflow/static/js/admin.js similarity index 100% rename from battleflow/static/js/admin.js rename to encounterflow/static/js/admin.js diff --git a/battleflow/static/js/board.js b/encounterflow/static/js/board.js similarity index 100% rename from battleflow/static/js/board.js rename to encounterflow/static/js/board.js diff --git a/battleflow/storage.py b/encounterflow/storage.py similarity index 100% rename from battleflow/storage.py rename to encounterflow/storage.py diff --git a/battleflow/templates/admin.html b/encounterflow/templates/admin.html similarity index 100% rename from battleflow/templates/admin.html rename to encounterflow/templates/admin.html diff --git a/battleflow/templates/board.html b/encounterflow/templates/board.html similarity index 100% rename from battleflow/templates/board.html rename to encounterflow/templates/board.html diff --git a/battleflow_data/icons/blinded.svg b/encounterflow_data/icons/blinded.svg similarity index 100% rename from battleflow_data/icons/blinded.svg rename to encounterflow_data/icons/blinded.svg diff --git a/battleflow_data/icons/charmed.svg b/encounterflow_data/icons/charmed.svg similarity index 100% rename from battleflow_data/icons/charmed.svg rename to encounterflow_data/icons/charmed.svg diff --git a/battleflow_data/icons/deafened.svg b/encounterflow_data/icons/deafened.svg similarity index 100% rename from battleflow_data/icons/deafened.svg rename to encounterflow_data/icons/deafened.svg diff --git a/battleflow_data/icons/frightened.svg b/encounterflow_data/icons/frightened.svg similarity index 100% rename from battleflow_data/icons/frightened.svg rename to encounterflow_data/icons/frightened.svg diff --git a/battleflow_data/icons/grappled.svg b/encounterflow_data/icons/grappled.svg similarity index 100% rename from battleflow_data/icons/grappled.svg rename to encounterflow_data/icons/grappled.svg diff --git a/battleflow_data/icons/paralyzed.svg b/encounterflow_data/icons/paralyzed.svg similarity index 100% rename from battleflow_data/icons/paralyzed.svg rename to encounterflow_data/icons/paralyzed.svg diff --git a/battleflow_data/icons/petrified.svg b/encounterflow_data/icons/petrified.svg similarity index 100% rename from battleflow_data/icons/petrified.svg rename to encounterflow_data/icons/petrified.svg diff --git a/battleflow_data/icons/poisoned.svg b/encounterflow_data/icons/poisoned.svg similarity index 100% rename from battleflow_data/icons/poisoned.svg rename to encounterflow_data/icons/poisoned.svg diff --git a/battleflow_data/icons/prone.svg b/encounterflow_data/icons/prone.svg similarity index 100% rename from battleflow_data/icons/prone.svg rename to encounterflow_data/icons/prone.svg diff --git a/battleflow_data/icons/restrained.svg b/encounterflow_data/icons/restrained.svg similarity index 100% rename from battleflow_data/icons/restrained.svg rename to encounterflow_data/icons/restrained.svg diff --git a/battleflow_data/icons/stunned.svg b/encounterflow_data/icons/stunned.svg similarity index 100% rename from battleflow_data/icons/stunned.svg rename to encounterflow_data/icons/stunned.svg diff --git a/battleflow_data/icons/unconscious.svg b/encounterflow_data/icons/unconscious.svg similarity index 100% rename from battleflow_data/icons/unconscious.svg rename to encounterflow_data/icons/unconscious.svg diff --git a/battleflow_data/preset_groups.json b/encounterflow_data/preset_groups.json similarity index 100% rename from battleflow_data/preset_groups.json rename to encounterflow_data/preset_groups.json diff --git a/pyproject.toml b/pyproject.toml index e4f7762..ce5d275 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,9 +3,9 @@ requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] -name = "battleflow" +name = "encounterflow" version = "0.1.0" -description = "Battleflow — OBS-friendly initiative board for tabletop encounters" +description = "EncounterFlow" authors = [{name="Aetryos Workshop"}] requires-python = ">=3.9" dependencies = [ @@ -14,4 +14,4 @@ dependencies = [ ] [project.scripts] -battleflow = "battleflow.cli:main" +encounterflow = "encounterflow.cli:main" diff --git a/tasks.py b/tasks.py index a88f1cd..96ddc10 100644 --- a/tasks.py +++ b/tasks.py @@ -9,7 +9,7 @@ def install(c): @task def run(c, host="0.0.0.0", port=5050, token="changeme", data_dir=""): extra = f"--data-dir {data_dir}" if data_dir else "" - c.run(f"python -m battleflow.cli --host {host} --port {port} --token {token} {extra}") + c.run(f"python -m encounterflow.cli --host {host} --port {port} --token {token} {extra}") @task def seed_icons(c, host="127.0.0.1", port=5050, token="changeme"): diff --git a/tests/test_api_basic.py b/tests/test_api_basic.py index 326929a..9aa95ce 100644 --- a/tests/test_api_basic.py +++ b/tests/test_api_basic.py @@ -1,8 +1,8 @@ import os, json, tempfile, shutil import pytest -from battleflow import create_app -from battleflow.state import STATE -from battleflow.storage import ensure_default_icons, load_state +from encounterflow import create_app +from encounterflow.state import STATE +from encounterflow.storage import ensure_default_icons, load_state TOKEN = "testtoken" @@ -11,8 +11,8 @@ def isolated_data(tmp_path, monkeypatch): # fresh state for each test data_dir = tmp_path / "bfdata" data_dir.mkdir() - monkeypatch.setenv("BATTLEFLOW_DATA_DIR", str(data_dir)) - monkeypatch.setenv("BATTLEFLOW_TOKEN", TOKEN) + monkeypatch.setenv("ENCOUNTERFLOW_DATA_DIR", str(data_dir)) + monkeypatch.setenv("ENCOUNTERFLOW_TOKEN", TOKEN) # reset STATE STATE.actors.clear(); STATE.turn_idx=0; STATE.round=1; STATE.visible=True; STATE.dead_mode='normal' app = create_app()