MarkMaker
General principles:
- each slides deck is described in a YAML manifest;
- the YAML manifest lists a number of Markdown files that compose the slides deck;
- a Python script "compiles" the YAML manifest into a HTML file;
- that HTML file can be displayed in your browser (you don't need to host it), or you can publish it (along with a few static assets) if you want.
Getting started
Look at the YAML file corresponding to the deck that you want to edit. The format should be self-explanatory.
I (Jérôme) am still in the process of fine-tuning that format. Once I settle for something, I will add better documentation.
Make changes in the YAML file, and/or in the referenced Markdown files. If you have never used Remark before:
- use
---to separate slides, - use
.foo[bla]if you wantblato have CSS classfoo, - define (or edit) CSS classes in workshop.css.
After making changes, run ./build.sh once; it will
compile each foo.yml file into foo.yml.html.
You can also run ./build.sh forever: it will monitor the current
directory and rebuild slides automatically when files are modified.
Publishing pipeline
Each time we push to master, a webhook pings
Netlify, which will pull
the repo, build the slides (by running build.sh once),
and publish them to http://container.training/.
Pull requests are automatically deployed to testing subdomains. I had no idea that I would ever say this about a static page hosting service, but it is seriously awesome. ⚡️💥