The three badges answer three different questions, and the second and third exist
because the first one has lied before. The workflow badge says the last run on
main went green. The site badge says the URL answers. The “site built” badge
reads build-info.json off the live site, so it says which build is actually
being served: on 2026-08-06 the build job was green while deploy-pages timed
out, and the site served the previous commit for hours with nothing showing it.
Course materials for Systems and Toolchains for AI Engineers, Fall 2026.
The rendered site is public: https://kitchingroup.cheme.cmu.edu/f26-06763/
Anything listed in the toc: of _toc.yml is published to that site. Anything
not listed stays private, which is why course/modules/ (instructor planning and
teaching notes) is deliberately excluded.
| Path | What it is |
|---|---|
CLAUDE.md | Working conventions. Read this first. |
course/ | Planning material: syllabus, schedule, modules, assignments |
lectures/lNN/ | Per-session notes, slides, and demo notebook |
_templates/ | Skeletons for notes and slides |
themes/course.css | Shared MARP slide theme |
_toc.yml | Jupyter Book config and table of contents |
One directory per session, l01 through l22, matching the L-numbers in
course/schedule.md. lectures/l01/ is the worked reference for both formats.
pip install "jupyter-book<2" # 1.x is required, see CLAUDE.md section 8
jupyter-book build . # full book into _build/html
npx @marp-team/marp-cli lectures/l01/slides.md -o /tmp/l01.htmlPushing to main builds the book, renders every slide deck, and deploys to
GitHub Pages via .github/workflows/book.yml.
Lecture notes are “textbook” documents/chapters meant to be read outside class. Slides are for presentation of the content during lectures. They are separate artifacts with
separate jobs, both derived from the corresponding lecture block in
course/modules/wkNN.md. The full orchestraton is in CLAUDE.md.