You can see the actual workshop walkthrough at
https://gibbons-lab.github.io/ccmb_workshop. Press ?
to get a list
of available live options such as slide overviews and speaker mode. Note that
some slides are grouped vertically, you can navigate the presentation using
the directional buttons on your keyboard.
A PDF version (lacks the output previews) is also available.
The course is meant to use all equipments available to the students so they can be encouraged to open it on their smartphone (landscape mode looks better) while they run commands on the terminal.
It focuses on the command line interface of Qiime 2 and basically works with the command line alone. So it should be usable even if you use a server or cloud deployment of Qiime 2. Make sure to give clear instructions how to connect to the server across different operating systems though ☝️
In order to minimize the need to transfer files between a server and the local machine all output is pre-generated and the visualizations are included directly in the presentation.
All output generated during the walkthrough can be found in the treasure chest. The easiest way to get all of that is to download the entire repository.
The presentation itself is a webpage hosted on GitHub Pages. It basically renders dynamically from a markdown file that includes the course. Editing the markdown file is sufficient to change the content of the presentation.
See the reveal docs for more info.
Open a terminal in the docs
folder in the repo and use:
python -m http.server
This will preview the talk at localhost:8000
in a browser. Editing the
markdown and reloading the page should be enough.
To generate a PDF of the course open up the website in chromium or chrome and
append ?print-pdf
to the address. For instance if you ran it locally as
described above open localhost:8000?print-pdf
in the browser. Then choose
print to PDF with the browser (choose margins: none).
In order to ensure all commands in the presentation actually run there is a pytest setup that does the following things:
- Extract all commands marked as bash or python and builds up a shell file running them all (commands.sh. Other languages are ignored, so you can use this to include optional or do-not-run commands.
- Runs all commands individually in pytest and reports eventual errors.
To run the pytest setup you need pytest installed (available on conda or pip) and call:
py.test test_commands.py
So in essence it should be enough to add new commands to the markdown file and run the tests in order to verify that everything works as expected.