Publish MARP slide decks from the site, plus two assignment pages - #2
Merged
Conversation
Move deck sources to slides/ so Hugo stops rendering them as ordinary pages, and build HTML + PDF into static/slides/ rather than public/, which Hugo wipes on every run and .gitignore excludes -- artifacts written there could never reach the deployed site. build-slides.sh fixes three silent failures: - use --theme, not --css. There is no --css flag; marp-cli accepts unknown options and ignores them, so the custom theme was never applied and decks rendered in marp's stock default. - pass --allow-local-files, without which the headless browser is blocked from reading slides/images and every image is dropped from the PDF. - copy slides/images next to the generated HTML, since marp leaves image srcs relative. CI runs the build before Hugo, so no generated artifacts are committed. Adds a /slides/ index page driven by the generated data/slides.yaml. Theme: switch to Roboto, and set font-family on section rather than body -- marp renders slides inside an SVG foreignObject, so a body rule never reaches them and the deck fell back to the default serif. Tighten leading and margins so a slide fits 13 single-line bullets instead of 7, and let bold text inherit its color so it stops rendering invisibly on dark slides. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Both were already referenced from the assignments index but had no page behind them; the individual report link was also misspelled and would have 404'd. Surface each assignment's drop allowance on its own page, matching the syllabus: attendance 3, exit tickets 3, forum posts 2, case analyses 1, individual report 1. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Sets up MARP decks to be viewable on the site and downloadable as PDF for D2L, and adds the two assignment pages that were linked but missing.
Slides pipeline
Deck sources moved from
content/slides/toslides/. Anything undercontent/is rendered by Hugo as an ordinary page —/slides/lecture-01-welcome/was live on msucerl.org serving the raw MARP source, slide separators and speaker notes included.Output now goes to
static/slides/instead ofpublic/. Hugo wipespublic/on every build and.gitignoreexcludes it, so nothing written there could ever have reached the deployed site.CI runs
./build-slides.shbefore Hugo, so no generated HTML or PDFs are committed.Three silent failures in the build script
--cssis not a marp-cli flag; unknown options are accepted and ignored--allow-local-files, so the headless browser is blocked from readingslides/imagesTheme
Switched to Roboto.
font-familywas declared only onbody, which marp never applies to the slide<section>inside its SVGforeignObject— decks were falling back to the browser default serif, so the font was broken independently of which family was named.Tightened leading and margins. Compounding line-heights (1.6 / 1.7 / 1.8) plus 12px list-item margins put a single bullet at 64px against a 600px budget:
Slides 9, 13 and 16 have 9–10 content lines, so they were overflowing. Also switched
justify-contentfromcentertoflex-start, so an overlong slide no longer clips its own title.Fixed bold text rendering invisibly on dark slides —
strongwas hard-coded to--primary, the same color as the title slide background, which is why the course number never appeared.Assignment pages
Adds
attendance.mdandindividual-report.md. Both were linked from the assignments index with no page behind them, and the individual report link was misspelled (indvidual-report) so it would have 404'd. Each assignment's drop allowance now appears on its own page, matching the syllabus: attendance 3, exit tickets 3, forum posts 2, case analyses 1, individual report 1.Verification
hugobuild, no warnings;/slides/index and both new assignment pages resolveThe
deployjob is gated to pushes onmain, so this PR exercises the build without touching the live site.🤖 Generated with Claude Code