Objectives
Welcome & Introduction
💡 You know what reproducibility is.
💡 You can argue why reproducibility is essential for research.
💡 You know what version control is.
💡 You can argue why version control is useful (for research).
💡 You can explain the difference between Git and GitHub.
💡 You understand the relevance of creating teaching materials in accordance with FAIR principles.
💡 You can develop reproducible teaching materials collaboratively using tools like Quarto and Git(Hub).
Quarto: Introduction
💡 You know what Quarto is and what it can be used for.
💡 You can create a new Quarto file and render it to HTML.
💡 You understand the basics of Markdown syntax (text formatting, headings, lists, links).
💡 You can add a YAML header to a Quarto file to configure title, author, and output format.
💡 You can integrate Quarto with Git by tracking .qmd files and ignoring generated output files.
Quarto: Presentations
💡 You can create a Quarto presentation using the reveal.js format.
💡 You can write slides using Markdown syntax (headings, text, images, code).
💡 You can use fragments to reveal content step-by-step.
💡 You can add speaker notes to your slides.
💡 You can customize your presentation with themes and layout options.
Objectives (continued)
Git: Setup & Configuration
💡 You know how to set up Git for the first time
💡 You have set up Git on your computer
💡 You know how to configure your username and email address in Git
💡 You understand the difference between the three Git configuration levels
💡 You know how to set up a new RStudio Project for Quarto
Command Line
💡 You can name the advantages of command-line interfaces.
💡 You can navigate directories using absolute and relative paths.
💡 You can use shortcuts like the tilde or dots to navigate your file system.
💡 You can apply arguments and flags to customize command-line commands.
💡 You can use wildcards (*) for file selection.
💡 You can combine command-line commands.
Git: Basics
💡 You can initialize a Git repository.
💡 You can check the status of a Git repository.
💡 You understand the difference between the staging area and a commit.
💡 You can stage and commit changes.
💡 You understand the difference between a commit message and a description.
Objectives (continued)
Git: Remotes
💡 You can create a remote repository.
💡 You can connect your local Git repository to a remote repository service like GitHub or GitLab.
💡 You can pull and push changes to and from a remote repository.
💡 You can clone a repository from a remote repository.
Git: Collaboration
💡 You know the purpose and components of a Pull Request.
💡 You know how to collaborate using the popular workflow strategy GitHub flow.
💡 You know the purpose and components of a README file.
💡 You can fork a repository.
💡 You can create a Pull Request from a forked repository.
💡 You can protect your main branch.
Quarto: Publication to GitHub Pages
💡 You can publish a Quarto website to GitHub Pages using GitHub Actions.
💡 You understand the difference between local and CI-based publishing.
💡 You can configure a GitHub Action for Quarto publication.
💡 You know how to set up custom domains for GitHub Pages.
💡 You understand why Git Tags matter in version control and project management.
💡 You know the difference between lightweight and annotated tags and how to apply them.
💡 You can push and pull tags to a remote repository (e.g., GitHub).
💡 You understand how GitHub releases complement Git Tags.
💡 You can use Zenodo to archive your repository and make your work citable.