Skip to main content

Prerequisites

  • Python 3.11+
  • uv (fast Python package manager)
Optional:
  • Redis (for background tasks with Celery)
  • PostgreSQL (SQLite works by default)

Local Setup

Visit http://localhost:5000 to see your application. Setup requires Python 3.11 or newer. Local setup uses SQLite for data and sessions, with Redis and Celery disabled. Run uv run pytest to check routes, auth, the admin API and migrations.

Adding Background Tasks

For a new installation, ./setup.sh --full installs and configures Redis sessions and Celery at localhost:6379. For an existing installation, preserve .env:

Docker Setup

Configure a new installation, then start the full production stack:
Includes Redis, PostgreSQL, Nginx, and Celery. Docker setup installs the full extras, generates required DB_PASSWORD and REDIS_PASSWORD values, and enables secure cookies for HTTPS. For an existing installation, keep the passwords used by its services. PostgreSQL and Redis do not publish host ports. The Celery health check targets the worker in its own container through Redis.

Environment Configuration

Key variables in .env:

Next Steps