Skip to content

Files

slides

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Oct 11, 2024
Jan 22, 2025
Sep 5, 2024
Jun 21, 2024
Feb 17, 2025
Dec 30, 2024
Aug 4, 2023
Jan 20, 2022
Jan 12, 2020
Mar 2, 2019
Nov 4, 2017
Sep 24, 2024
Nov 10, 2017
Jan 12, 2020
Jan 13, 2025
Jan 6, 2023
Nov 23, 2024
Nov 15, 2017
Jan 4, 2022
Apr 7, 2020
Jun 3, 2018
Jun 4, 2021
Aug 17, 2023
May 22, 2024
Feb 22, 2023
Feb 22, 2023
Feb 22, 2023
Aug 27, 2023
Nov 30, 2023
Aug 27, 2023
May 29, 2023
May 29, 2023
Jun 21, 2024
May 29, 2023
Apr 24, 2021
Feb 23, 2023
Apr 20, 2020
May 21, 2021
Nov 19, 2024
Mar 20, 2020
Nov 4, 2017
Nov 4, 2017
Nov 8, 2017
May 31, 2018
Aug 17, 2022
Nov 10, 2017
May 29, 2023
May 29, 2023
May 29, 2023
May 29, 2023
Oct 13, 2021
Nov 20, 2024
Nov 19, 2024

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 want bla to have CSS class foo,
  • 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.

If you have problems running ./build.sh (because of Python dependencies or whatever), you can also run docker-compose up in this directory. It will start the ./build.sh forever script in a container. It will also start a web server exposing the slides (but the slides should also work if you load them from your local filesystem).

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. ⚡️💥

Extra bells and whistles

You can run ./slidechecker foo.yml.html to check for missing images and show the number of slides in that deck. It requires phantomjs to be installed. It takes some time to run so it is not yet integrated with the publishing pipeline.