Template Workshop

An opinionated template for making workshops as open educational resources

1 Welcome

DOI Copier GitHub License GitHub Release Test Build website CodeQL pre-commit.ci status lifecycle Project Status: Active – The project has reached a stable, usable state and is being actively developed.

This is a template for creating a new workshop with the intent of making it an open educational resource (OER). Use this template to quickly get started with a new workshop with all the necessary files and configurations in place, including for developing the workshop.

1.1 Features

There are four sets of features included in this template, those for general workshops, those for R workshops, and those for general or R workshops developed within rostools. These are the features for the general workshops:

  • Uses Quarto for the workshop content, allowing for easy integration of code, text, and figures.
  • Includes a justfile for managing common tasks like building the workshop and running checks.
  • Uses typos to check for common spelling mistakes.
  • Uses a CC-BY-4.0 license for the workshop content.
  • Run checks with with pre-commit hooks to ensure consistent formatting and style across the project. It includes checks for credentials, typos, and file formatting.
  • Includes GitHub Actions for continuous integration, testing, and delivery for running checks, formatting, releasing, and building the website.
  • Uses Netlify for hosting the workshop website or GitHub Pages if you prefer to host it there.
  • Includes an EditorConfig file to ensure consistent formatting across different editors.
  • High level, system and program management with uv.
  • Pull Request template for easy creation of new Pull Requests.
  • VS Code settings commonly used by contributors working in VS Code.
  • .zenodo.json file for citation information, that provides Zenodo with the necessary metadata to create a DOI for the workshop.
  • Includes a GoatCounter file for website visitor tracking, which is privacy-friendly and does not use cookies. That means it doesn’t need a GDPR notice as no personal data is collected.
  • Checks URLs with Lychee to ensure that URLs are not broken.
  • Uses rumdl to format Markdown files in a consistent way.
  • Includes Dependabot configuration for automatically keeping dependencies up to date.

For R-specific workshops, the additional feature is:

  • For R projects, uses Air to format and check R code.

These are additional features for workshops developed within rostools:

  • GitHub workflows for automatically adding Pull Requests and Issues to a project board.
  • Uses the rostools-theme Quarto extension for a standard appearance across workshops.
  • Automated Git tagging and GitHub releases with commitizen that are based on messages following Conventional Commits.

1.2 Want to contribute?

We would love your feedback or contributions! Head over to our GitHub repository to share your ideas or contribute code. Your input makes us better!

1.2.1 Contributors

The following people have contributed to this project by submitting pull requests 🎉

@lwjohnst86, @signekb

1.3 Licensing

This project is licensed under the MIT License.