This is the clean starter for an end-to-end invoice and receipt review application. You will build a workflow for Northstar Facilities B.V. that combines Azure document extraction, deterministic finance rules, SQLite persistence, and a human review interface.
You are on
main, the learner starter. Active work is visible ondevelopment; the reviewed finished application is onsolution.
Tutorial: https://learn.datalumina.com/docs/invoice-review
- The client brief and target architecture
- A fictional 13-document multilingual corpus
- Safe environment templates
- Exact dependency pins and lockfiles
- Backend and frontend project configuration
Application code is intentionally absent. The tutorial builds the backend and frontend from this starting point.
- Python 3.12 or newer
- uv
- Node.js 22 or newer
- pnpm 11
cd backend
uv sync --locked
cd ../frontend
pnpm install --frozen-lockfileCopy backend/.env.example to backend/.env and frontend/.env.example to frontend/.env when the tutorial reaches environment configuration. The backend file contains only Azure provider configuration; the frontend file contains VITE_API_BASE_URL. Add real Azure values only when the provider stages require them.
cd backend
uv sync --locked
cd ../frontend
pnpm install --frozen-lockfilemain: clone this branch to follow the tutorial from the prepared starting point.development: inspect the public working branch and later experiments.solution: inspect the reviewed end product.
To switch to the finished application:
git switch solutionStart with the client brief, then follow the complete tutorial.