Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Deployment

Build

cargo build --release

The binary is at target/release/bydleni_rs.

Running in production

DATABASE_URL=sqlite:data.db FRED_API_KEY=xxx ./bydleni_rs serve

The server listens on port 3000. Use a reverse proxy (Caddy, nginx) for:

  • TLS termination
  • Compression (gzip/brotli) – the app does not compress responses itself
  • Static file caching

Caddy example

bydleni.example.com {
    reverse_proxy localhost:3000
    encode gzip
}

Data persistence

All data is in a single SQLite file (data.db by default). The background scheduler fetches and recomputes every 6 hours, so the database stays current without manual intervention.

Documentation

Documentation is built with mdBook and deployed to GitHub Pages via the .github/workflows/docs.yml workflow. It triggers on pushes to master that change files in docs/.