AI-assisted learning workflows for homeschool reporting.
This project uses Poetry for dependency management.
poetry installFor common operations, prefer the Taskfile:
task --listRun the full test suite:
task testRun the reporting-focused tests:
task test-reportingGenerate the current week's summary:
task summarize-currentRegenerate the current week's summary:
task summarize-current-forceGenerate the current week's summary with additional context:
task summarize-current COMMENT="Student was sick this week"If the weekly text summary is already correct and only the scans PDF needs to be refreshed, use the dedicated scans rebuild workflow.
Rebuild the current week's scans PDF:
task rebuild-scans-current-forceRebuild the previous week's scans PDF:
task rebuild-scans-previous-forceRebuild a week by offset from the current week:
task rebuild-scans-week OFFSET=2 EXTRA_ARGS="--force"You can also run the script directly:
poetry run python scripts/rebuild_week_scans.py --current --forceProcess Nomy PDF reports:
task process-nomyParse Sofatutor exports into activity JSON:
task update-sofatutorBuild an activity report grouped by subject:
task activities-by-subject START=2026-01-01 END=2026-01-31- Weekly scans support
Gescannt_*, PixelPXL_*, and WhatsAppIMG-YYYYMMDD-WAxxxx.*filenames. - Pixel and WhatsApp images are normalized into
Gescannt_*filenames during scan PDF rebuilds.