Backlog is a self-hosted to-do management REST API built with FastAPI and PostgreSQL. It is designed to be client-agnostic, meaning anyone can build their own frontend or UI on top of it.
Backlog is in early development and is not yet ready for use.
To run Backlog on your system, you need to have the following installed:
- Python 3.13+
- uv
- Docker (for running PostgreSQL)
- Clone and
cdinto the repository using SSH:or using HTTPS:git clone [email protected]:mbreemhaar/backlog.git cd backlog
git clone https://github.com/mbreemhaar/backlog.git cd backlog - Install dependencies using
uv:uv sync
- Copy the example environment file and adjust as needed:
cp .env.example .env
- Start the PostgreSQL database:
docker compose up -d
- Run the application:
uv run fastapi dev
Run these checks locally before pushing:
| Check | Command |
|---|---|
| Lint | uv run ruff check |
| Format check | uv run ruff format --check |
| Format fix | uv run ruff format |
| Type check | uv run mypy . |
| Test | uv run pytest |
Backlog is licensed under the MIT License.