Modules 1–2: reference exemplars (locked for tone/depth/lab style).
Modules 3–27: full lessons + runnable labs, authored in dependency-chain order — vendor/model-agnostic, each with the 7 core template sections and a hands-on lab + "you're done when" check.
Module 8 hosting comparison web-researched and date-stamped (as of 2026-06-22), not from memory; expansion-zone modules (15+) carry a Verify-before-publish checklist.
Capstone: the full loop end to end on the running tasks-app example, plus the Unit 5 stretch variant.
Verification
117 files; every module README has all 7 template sections.
All lab Python/shell/YAML syntax-checked clean (one intentional paste-in fragment in Module 12).
No generated junk committed (__pycache__, tasks.json, etc. gitignored).
Next steps (out of scope for this PR): a GitHub copy and jpaul.me blog posts once the content is reviewed.
Builds out the entire course from the completed plan.
## What's in here
- **Scaffold**: course `README.md`, vendor-neutral `AGENTS.md` (dogfoods Module 5), `_TEMPLATE.md` (fixed 9-section module shape), root `.gitignore`, `.claude/gitea-ship.json`.
- **Modules 1–2**: reference exemplars (locked for tone/depth/lab style).
- **Modules 3–27**: full lessons + runnable labs, authored in dependency-chain order — vendor/model-agnostic, each with the 7 core template sections and a hands-on lab + "you're done when" check.
- **Module 8** hosting comparison web-researched and date-stamped (as of 2026-06-22), not from memory; expansion-zone modules (15+) carry a Verify-before-publish checklist.
- **Capstone**: the full loop end to end on the running `tasks-app` example, plus the Unit 5 stretch variant.
## Verification
- 117 files; every module README has all 7 template sections.
- All lab Python/shell/YAML syntax-checked clean (one intentional paste-in fragment in Module 12).
- No generated junk committed (`__pycache__`, `tasks.json`, etc. gitignored).
Next steps (out of scope for this PR): a GitHub copy and jpaul.me blog posts once the content is reviewed.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Scaffold the course repo and author the full curriculum in dependency-chain
order, following the settled build decisions in handoff.md.
- Scaffold: course README, vendor-neutral AGENTS.md (dogfoods Module 5),
_TEMPLATE.md (the fixed 9-section module shape), root .gitignore, ship config.
- Modules 1-2: reference exemplars (locked for tone/depth/lab style).
- Modules 3-27: full lessons + runnable labs, each following the template,
respecting the chain, vendor/model-agnostic, with "feel the pain" labs.
- Module 8 hosting comparison web-researched and date-stamped (as of 2026-06-22),
not written from memory; expansion-zone modules carry Verify-before-publish.
- Capstone: the full loop end to end on the running tasks-app example.
Lab code syntax-checked (Python/shell/YAML); every module has the 7 core
template sections.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01TfzV5QvtPDz8LJS3Pu5VLT
claude
merged commit 2684095e2f into main2026-06-22 12:19:01 -04:00
claude
deleted branch build/modules-and-capstone2026-06-22 12:19:02 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Builds out the entire course from the completed plan.
What's in here
README.md, vendor-neutralAGENTS.md(dogfoods Module 5),_TEMPLATE.md(fixed 9-section module shape), root.gitignore,.claude/gitea-ship.json.tasks-appexample, plus the Unit 5 stretch variant.Verification
__pycache__,tasks.json, etc. gitignored).Next steps (out of scope for this PR): a GitHub copy and jpaul.me blog posts once the content is reviewed.
🤖 Generated with Claude Code