Scheduling Documents

The curriculum for Stat 20 has a lot of individual files - slides, worksheets, notes - that need to be published on a fairly intricate schedule: notes are published before the corresponding lesson and slides and worksheets the day of that lesson. Instead of requiring the course instructors to manually add each new document to the repository each semester and then republish the website, document publishing is automated and controlled via one file called _schedule.yml found in the root of the repository.

schedule:
    - week: 1
      unit: Questions and Data
      days:
        - topic: "No class"
          display-date: Jan 20
        - topic: "Understanding the World with Data"
          display-date: Jan 21/22
          date: 1/21/25
          before-class:
            docs:
              - type: Notes
                href: 1-questions-and-data/notes.qmd
                hide-from-schedule: true
              - type: Notes
                href: 1-questions-and-data/01-understanding-the-world/notes.qmd
          in-class:
            docs:
              - type: Slides
                href: 1-questions-and-data/01-understanding-the-world/slides.qmd
              - type: Handout
                href: 1-questions-and-data/01-understanding-the-world/handout.qmd

How it works

The scheduled documents feature is enabled by a Quarto extension called scheduled-docs. You can read its documentation at https://github.com/qmd-lab/scheduled-docs and inspect the installed files in this repository in the _extensions/qmd-lab/scheduled-docs subdirectory.