Quick Start

Start a local TaskBandit stack.

Use Docker Compose to run PostgreSQL, the API server, and the shared web container.

Fastest setup

Download the Compose file and example environment, create the persistent folders, then start the stack.

mkdir -p taskbandit
cd taskbandit
wget -O docker-compose.yml https://raw.githubusercontent.com/kriziw/TaskBandit/main/docker-compose.yml
wget -O .env https://raw.githubusercontent.com/kriziw/TaskBandit/main/.env.example
mkdir -p data/postgres data/taskbandit
docker compose up -d

Before first real start

For anything beyond a localhost test, edit .env before the first start.

  • Change TASKBANDIT_DB_PASSWORD and TASKBANDIT_JWT_SECRET.
  • Keep TASKBANDIT_DATA_ROOT=./data unless you intentionally want another persistent storage path.
  • Set TASKBANDIT_BOOTSTRAP_SEED_DEMO_DATA=false if you do not want demo accounts.

Domain or reverse proxy

If users will open TaskBandit through a domain instead of localhost, set the public web URL and API URL in .env. TaskBandit derives the admin URL automatically.

TASKBANDIT_PUBLIC_WEB_BASE_URL=https://taskbandit.example.com
TASKBANDIT_PUBLIC_API_BASE_URL=https://api.taskbandit.example.com
TASKBANDIT_BOOTSTRAP_SEED_DEMO_DATA=false

In most installs, you do not need to set a separate admin URL, explicit CORS origin, or reverse-proxy flag. Route the web container to taskbandit-web:80 (or host port 4173) and the API container to taskbandit-server:8080. See Reverse Proxy for headers and examples.

Nginx Proxy Manager

With the Nginx Proxy Manager UI, create two proxy hosts and keep the admin UI on the same web host.

  • taskbandit.example.com - forward to taskbandit-web:80 if NPM shares the Docker network, or to your Docker host IP on port 4173.
  • api.taskbandit.example.com - forward to taskbandit-server:8080 if NPM shares the Docker network, or to your Docker host IP on port 8080.
  • Do not create a separate proxy host for /admin; it stays under https://taskbandit.example.com/admin/.

First household setup

When the setup screen creates the first household, it can import starter templates. These templates are translated into English, German, and Hungarian and include common linked routines such as washing clothes, hanging clothes, folding clothes, kitchen cleanup, house cleaning, waste collection, bedding, and plant care.

Use the checkboxes to import only the routines that fit your household. You can edit or remove them later from the admin Templates page.

Open the UIs

  • Client web UI/PWA: http://localhost:4173/
  • Admin web UI: http://localhost:4173/admin/
  • API health check: http://localhost:8080/health

Demo sign-in

If demo seed data is enabled, these accounts use the password TaskBandit123!.

  • alex@taskbandit.local
  • maya@taskbandit.local
  • luca@taskbandit.local