Getting started
===============
This page sets up a development environment, starts the application
with sample data and lists every ``task`` command.
Prerequisites
-------------
- `uv `_, which also installs the required
Python version (3.14 or newer).
- `Node.js `_ 20 or newer for the frontend.
- `Docker `_ for the ephemeral database and
the demo stack.
- `go-task `_ version 3, which provides the
``task`` command.
Dev container
^^^^^^^^^^^^^
The repository ships a dev container in ``.devcontainer/``.
It is based on the Ubuntu dev container image with Python 3.14,
Node 24 and Docker-outside-of-Docker.
Its ``init.bash`` post-create script installs ``uv`` and ``task`` if
they are missing, runs ``uv sync`` in ``backend/`` and ``npm ci`` in
``frontend/``.
It forwards the ports 8100 (backend), 5173 (frontend dev server) and
55432 (database).
Inside the container only the environment file and the catalog below
still need to be created.
Set up the environment
----------------------
.. code-block:: sh
# Dev-only settings; both secrets must stay unset in production.
cp .env.example .env
openssl rand -hex 32 # use the output as the dev secret
# A configured catalog to poll: the bundled demo catalog.
cp catalog.demo.yaml catalog.yaml
# Backend dependencies.
cd backend && uv sync && cd ..
Edit ``.env`` and set:
.. code-block:: sh
ADRIANO_DEV_AUTH_ENABLED=true
ADRIANO_DEV_SHARED_SECRET=