Architecture + Version Matrix
Core Architecture
- Backend: Python WSGI app in
app/server.py
- Frontend: server-rendered HTML with progressive enhancement in
app/static/app.js
- Style system:
app/static/style.css
- Persistence: SQLite by default, PostgreSQL when
MAKERSPACE_DATABASE_URL is set
Software Version Inventory
- Python:
3.11.9
- Gunicorn:
>=21.0.0
- Flask:
>=3.0.0
- Werkzeug:
>=3.0.0
- psycopg[binary]:
>=3.1.18
- pypdf:
>=4.3.1
Request Flow
- WSGI entrypoint resolves path and user session context.
- CSRF and role gates apply to mutating requests.
- Organization-scoped SQL executes.
- HTML or JSON response is returned with security headers.
Role Model
viewer
student
staff
manager
workspace_admin
owner
Build and Ops Toolchain
- Git + GitHub + GitHub Desktop
- DigitalOcean (Droplet and App Platform)
- DigitalOcean Managed PostgreSQL
- OpenAI Codex (GPT-5.3 workflow) for iterative engineering and documentation