A standing collection of external GitHub Actions and CI tooling worth studying as we design our own action surface. Not a work item — a reading list. Add further finds as comments and they can be folded into this body.
xu-cheng/latex-action
Link: https://github.com/xu-cheng/latex-action — "GitHub Action to compile LaTeX documents". ~1.4k stars, actively maintained (last pushed 2026-06-25).
It compiles LaTeX inside a pinned TeX Live container, and it is the closest well-travelled analogue to what build-lectures does with builder: pdflatex. It was originally proposed for QuantEcon back in 2020 in QuantEcon/meta#16, which has now been closed in favour of build-lectures — but its input design is still the interesting part.
Four patterns in its interface worth comparing against ours:
| Their pattern |
Why it is interesting for us |
texlive_version and docker_image as first-class inputs |
Toolchain version pinning is exposed to the caller rather than baked into the action. Relevant to how containers/ and the Anaconda baseline are surfaced (#106). |
pre_compile and post_compile hooks |
A general escape hatch instead of growing a new input for every scenario. Directly relevant to the extra-args passthrough question in #97. |
continue_on_error |
An explicit, named decision about whether a failed build fails the job — worth contrasting with our --keep-going default and the CI-gate defect in QuantEcon/meta#340, where a broken build can still go green. |
extra_system_packages and extra_fonts |
Layering extra dependencies at run time without rebuilding or forking the base image. |
The contrast worth drawing: their action takes a document and a toolchain and is otherwise stateless, whereas ours carry environment setup, caching and publishing concerns as well. Where that extra scope is genuinely load-bearing it should stay — but their input surface is a good yardstick for which of our inputs are essential and which are accidental.
A standing collection of external GitHub Actions and CI tooling worth studying as we design our own action surface. Not a work item — a reading list. Add further finds as comments and they can be folded into this body.
xu-cheng/latex-action
Link: https://github.com/xu-cheng/latex-action — "GitHub Action to compile LaTeX documents". ~1.4k stars, actively maintained (last pushed 2026-06-25).
It compiles LaTeX inside a pinned TeX Live container, and it is the closest well-travelled analogue to what
build-lecturesdoes withbuilder: pdflatex. It was originally proposed for QuantEcon back in 2020 in QuantEcon/meta#16, which has now been closed in favour ofbuild-lectures— but its input design is still the interesting part.Four patterns in its interface worth comparing against ours:
texlive_versionanddocker_imageas first-class inputscontainers/and the Anaconda baseline are surfaced (#106).pre_compileandpost_compilehookscontinue_on_error--keep-goingdefault and the CI-gate defect in QuantEcon/meta#340, where a broken build can still go green.extra_system_packagesandextra_fontsThe contrast worth drawing: their action takes a document and a toolchain and is otherwise stateless, whereas ours carry environment setup, caching and publishing concerns as well. Where that extra scope is genuinely load-bearing it should stay — but their input surface is a good yardstick for which of our inputs are essential and which are accidental.