No description
| .github/workflows | ||
| ingredients | ||
| meals | ||
| persons | ||
| products | ||
| recipes | ||
| shopping | ||
| tests | ||
| .editorconfig | ||
| .gitignore | ||
| common.py | ||
| db.py | ||
| main.py | ||
| plan.md | ||
| pyproject.toml | ||
| README.md | ||
| requirements.txt | ||
| transform.sql | ||
| units.py | ||
Meal planner backend
Structure
main.py: FastAPI app with all HTTP endpoints.db.py: aiosqlite connection + schema bootstrap across subpackages.- Domain packages with models and persistence:
products/(db, scrapers for Woolworths/Coles)ingredients/recipes/(db, scraping)meals/persons/shopping/
tests/: unit and API tests with sample HTTP fixtures.
Getting started
Install packages
pip install -r ./requirements.txt
Run API (dev)
uvicorn main:app --reload
Run tests
python -m unittest -q
Tooling
This repo includes baseline configs in pyproject.toml:
- black (format)
- ruff (lint)
- mypy (type check)
Optional commands (install these locally first):
ruff check .
black .
mypy .