Lecturer FAQ

Project composition

Installation

VS-Code

Preview

Workflows

Build locally

Update public webpage

Authoring

Student / Lecturer version (project profiles)

Project profiles allow to branch the content within one document. We will primarily use this to differentiate between student and lectuerer content (e.g. the visibility of solutions).

Settings

Default setting can be found in the _quarto.yml under profile > default is equivalent to exporting the environment variable

export QUARTO_PROFILE="lecturer, shallowflow-reduced"

In order to generate a student version, export the following environment variable and render:

export QUARTO_PROFILE="student"
quarto render

All available options are listed in the _quarto.yml, under the profile > group keyword. The group lists indicate that we currenly use two mutually exclusive settings:

profile:
  default: lecturer, shallowflow-reduced
  group: 
    - [lecturer, student]
    - [shallowflow-reduced, shallowflow-full]

The default option os always the first item in the list. However, by specifying the default argument, we make the default setting more verbose.

Example

In order to create a Exercise with solution, you can use the following template:

# Exercise title
EXERCISE
::: {.content-visible when-profile="lecturer"}
SOLUTION
:::

References

Interactive Content

PDF vs Website content

Resources

Adding a pdf

  1. Paste your pdf in content/resources/pdfs.
  2. Add a filename.yaml file into content/resources/listing/ with content similar to be one below:
  title: "Demo"
  author: Ingo Steldermann
  date: 2024-04-05
  path: "/content/resources/pdfs/resource.pdf"
  categories: [demo]
  1. Add the resource.pdf as well as the filename.yaml to git.

Adding a new presentation

We use Revealjs resources.

As as independent quarto project

Note

Usecase: Content that has its own requirements or projects that should be accessable independently of the general toolchain.

A presentation starts as a completely indepentent project that is only merged later. If you want start from a template, you can use the demo in content/resources/content/demo.

  1. Paste your content into as a new folder in content/resources/content (or copy the template folder).
  2. Add your content into the index.qmd file.

Make content visible at the webpage

  1. Paste your presentation into as a new folder in content/resources/content (or copy the templte folder).
  2. Check that your preamble contains the following (e.g. in the _quarto.yml or in the metadata section of index.qmd):
  output-dir: _output
  output-file: index.html
  standalone: true
  embed-resources: true
  1. (optional) use global references: add the following to the preamble:
bibliography: 
  - references.bib
  - ./../../../references.bib
  1. Add a presentationname.yaml file into content/resources/listing/ with content similar to be one below:
  title: "Demo"
  author: Ingo Steldermann
  date: 2024-04-05
  path: "/content/resources/content/demo/_output/index.html"
  categories: [demo]
Important

The path is critical in such that the file can be found. The rest is optional data that is shown in the listing on the webpage.

  1. Commit content/resources/content/<your new folder>/_output/index.html.
  2. push

Demo slide

Revealjs seminar plugin

Polls

Chalkboard/Whiteboard