A minimalistic FastAPI application for managing books with SQLite database, featuring Pydantic validation and comprehensive REST endpoints.
- Health check endpoint
- Get book by ID
- List books with filtering (by title, minimum pages)
- Create new books with validation
- Update book price and rating
- Full Pydantic validation for data integrity
- Docker and Docker Compose
Start the production server:
docker compose up app --buildThe API will be available at http://localhost:8080
Run acceptance tests:
# Make sure the server is running first
python3 acceptance_test.pyRun unit tests:
# Run all tests
docker compose run --rm --build app-dev uv run pytest