Pixie log the backlog api
Find a file
Jonatas Oliveira 820e8a7649
Some checks failed
ci/woodpecker/manual/pipeline/1 Pipeline failed
ci/woodpecker/manual/pipeline/2 Pipeline failed
ci/woodpecker/cron/pipeline/2 Pipeline is pending
ci/woodpecker/cron/pipeline/1 Pipeline is running
feat: add goal and list. mail smtp configure
2026-01-07 10:02:29 +01:00
.woodpecker Initial commit 2026-01-05 05:19:07 +00:00
migrations feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
scripts feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
src feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
templates feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
tests feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
.audit.toml feat: add games management 2026-01-05 14:06:00 +01:00
.env feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
.env.example feat: add games management 2026-01-05 14:06:00 +01:00
.gitignore Initial commit 2026-01-05 05:19:07 +00:00
.pre-commit-config.yaml feat: add games management 2026-01-05 14:06:00 +01:00
Cargo.toml feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
docker-compose.yml feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00
init_db.sh feat: add games management 2026-01-05 14:06:00 +01:00
LICENSE feat: add user management 2026-01-05 08:14:50 +01:00
parse_lcov.py feat: add games management 2026-01-05 14:06:00 +01:00
README.md feat: add goal and list. mail smtp configure 2026-01-07 10:02:29 +01:00

Pixie API

A Rust-based API for Pixielog, featuring Keyrunes authentication, email confirmation, and Femtocat-styled views.

Prerequisites

  • Rust (latest stable)
  • Docker and Docker Compose
  • Postgres client (optional, for debugging)

Configuration

The application requires the following environment variables. A .env file can be used locally.

Variable Description Example
DATABASE_URL Postgres connection string postgres://postgres:password@localhost:5432/pixielog
SMTP_URL SMTP server URL smtp://localhost:1025
KEYRUNES_URL Keyrunes service URL http://localhost:3000 (internal) or http://keyrunes:3000 (docker)
APP_URL Public URL of this app http://localhost:8000

Running the Application

1. Start Infrastructure

Start Postgres, Mailhog, and Keyrunes using Docker Compose:

docker-compose up -d

2. Initialize Keyrunes (First Run Only)

Setup superuser and organization in Keyrunes:

docker compose exec keyrunes sh /setup.sh

3. Run Database Migrations

Initialize the pixielog database schema:

sqlx migrate run

3. Run Locally (Development)

Start the API server:

cargo run

The server will be available at http://localhost:8000.

4. Run via Docker

To run the entire stack including the API in Docker (if a Dockerfile is provided, otherwise mostly used for deps):

docker-compose up -d

(Note: Ensure your config or env vars point to the keyrunes container name if running inside docker network)

Development

View Docs

Swagger UI is available at: http://localhost:8000/swagger-ui/

Running Tests

Run unit and integration tests:

# Unit tests
cargo test

# Hurl Integration tests (requires running server)
hurl --test tests/auth.hurl