Add Flask web UI, Docker Compose, core engine + tests

- physcom core: CLI, 5-pass pipeline, SQLite repo, 37 tests
- physcom_web: Flask app with HTMX for entity/domain/pipeline/results CRUD
- Docker Compose: web + cli services sharing a named volume for the DB
- Clean up local settings to use wildcard permissions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Simonson, Andrew
2026-02-18 13:59:53 -06:00
parent 6e0f82835a
commit 8118a62242
54 changed files with 3505 additions and 1 deletions

34
docker-compose.yml Normal file
View File

@@ -0,0 +1,34 @@
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- physcom-data:/app/data
environment:
- PHYSCOM_DB=/app/data/physcom.db
- FLASK_SECRET_KEY=${FLASK_SECRET_KEY:-physcom-dev-key}
restart: unless-stopped
cli:
build: .
volumes:
- physcom-data:/app/data
environment:
- PHYSCOM_DB=/app/data/physcom.db
entrypoint: ["python", "-m", "physcom"]
profiles: [cli]
# Future: replace SQLite with a dedicated DB service
# db:
# image: postgres:16
# volumes:
# - pgdata:/var/lib/postgresql/data
# environment:
# - POSTGRES_DB=physcom
# - POSTGRES_USER=physcom
# - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
physcom-data:
# pgdata: