Skip to content

Getting started

Talaia is a Python 3.12 project managed with uv. Everything runs from the backend/ directory of the repository.

Terminal window
cd backend
uv sync
cp .env.example .env # fill in credentials (TEST accounts only!)

The .env file carries the core settings (TALAIA_*), optional Pushover / InfluxDB / heartbeat settings, and one block of <PROJECT>_* credentials per monitored project. Every variable is documented with a placeholder in .env.example.

Browser suites need Chromium once:

Terminal window
uv run playwright install chromium
Terminal window
uv run talaia list # discovered suites
uv run talaia run bikecrm/backend # run one suite now
uv run talaia run --all # run every enabled suite

A suite’s id is its path relative to projects/ — e.g. bikecrm/backend is the directory projects/bikecrm/backend/. run --all skips disabled suites, but an explicit talaia run <suite> works even when the suite is disabled, which is handy for verifying a suite before enabling it.

Each run executes the suite’s pytest in a subprocess, applies in-run retries, records the result in SQLite, and (when configured) sends alerts, pings the heartbeat, and mirrors the run to InfluxDB.

Terminal window
uv run talaia ui # serves the status page locally on port 8080

A thin, UptimeRobot-style status page: per-suite health and recent runs, served read-only straight from the SQLite store.

CommandWhat it does
talaia listlist discovered suites
talaia run <suite>… [--all]run one or more suites now
talaia crontabprint the cron lines for enabled suites (consumed by supercronic in production)
talaia uiserve the status UI
talaia purgedelete runs older than N days (also runs automatically after each suite run, per TALAIA_RETENTION_DAYS, default 90)