# Backend development commands for Captain's Log export DATABASE_URL :="sqlite://local.db" [working-directory: 'backend'] dev-backend: cargo run [working-directory: 'backend'] build-backend: cargo build [working-directory: 'backend'] test-unit-backend: cargo test [working-directory: 'backend'] fmt-backend: cargo fmt [working-directory: 'backend'] fmt-check-backend: cargo fmt --check [working-directory: 'backend'] lint-backend: cargo clippy [working-directory: 'backend'] clean-backend: cargo clean [working-directory: 'backend'] reset-db: sqlx database drop sqlx database create sqlx migrate run [working-directory: 'backend'] migrate: sqlx migrate run [working-directory: 'backend'] migrate-revert: sqlx migrate revert [working-directory: 'backend'] test-integration: #!/usr/bin/env bash set -e cargo run & SERVER_PID=$! trap 'echo "Stopping server..."; kill -TERM $SERVER_PID 2>/dev/null || true; wait $SERVER_PID 2>/dev/null || true' EXIT echo "Waiting for server to start..." printf 'GET http://localhost:3000/health\nHTTP 200' | hurl --retry 30 > /dev/null echo "Running integration tests..." hurl --test --error-format long --variable host=http://localhost:3000 tests/api/*.hurl [working-directory: 'backend'] test-coverage: cargo tarpaulin --out Html --output-dir coverage