stages
stanza in the lesson definition file:syrctl
so you can validate this structure yourself, but here are some general rules:stage<N>
where N
is the stage ID.configs
directory, where all of the files related to Endpoint configuration should be kept.Markdown <Writing Lab Guides with Markdown>
Jupyter Notebooks <Writing Lab Guides with Jupyter Notebooks>
NRE Labs NAPALM lesson <https://labs.networkreliability.engineering/labs/?lessonId=13&lessonStage=1>
_ is a good example of a lesson that leverages both options. The sections below will explain how to use either option.Markdown
. This is an extremely popular, simple formatting syntax for creating rich documents from plain-text sources. Most of the time when you see a README
file on a GitHub repository, the chances are very good that it's written in Markdown. What Github does is translate the raw text of the file into richly formatted, rendered versions appropriate for viewing in a web browser.antidote-web
will take care of translating the source file into HTML to be presented to the user.Pandoc
, if you are so inclined.antidote-web
you should be aware of that really uplevels your lesson guide. In Markdown, you can wrap a bit of text with triple-backticks, and it will preserve the formatting you use within that block. This is very useful for code or CLI commands, where the structure is very important.linux1
refers to the tab where this snippet should be executed. The front-end will switch to the tab named accordingly and paste that text automatically. So, you'll need to edit this to point to the tab you want.<pre>
tags in lieu of the traditional triple-backtick for embedding code in Markdown:guide.md
. This is where the Antidote platform will look for this lesson guide.This section is focused on lesson authors looking to use Jupyter notebooks in the creation of a lesson. See here if you're looking for an overview of how to use lesson guides in NRE Labs.
Fair warning - Jupyter notebooks offer a lot more functionality than Markdown-based lab guides, but they do add a layer of complexity as a result. So, if you're starting from scratch, it's probably best to start with Markdown-based lab guides. However, the choice is yours.
webapp
, you can refer to it via the hostname webapp
, right in the notebook. No need to figure out IP addresses for stuff.jupyterLabGuide: true
to each Stage that requires it in your lesson definition. Here's an example of a lesson that uses Jupyter notebooks for stages 1, 2, and 4, but uses the traditional Markdown format for stage 3:notebook.ipynb
is in all relevant stage directories. This obviates the need for a guide.md
file.