t-squared: A template for creating other Copier templates

DOI Copier GitHub License GitHub Release Test Build website CodeQL pre-commit.ci status lifecycle Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public.

This is a template for creating a new repository for building Quarto-based websites. Use this template to quickly get started with making a website as well as having infrastructure configuration to make developing and building the website easier.

Features

These are the features included in this template that help with building and maintaining a Copier template. Depending on the answers given to the template questions, some of these features may not be included in the created project:

  • Uses Quarto Markdown for the website content, allowing for easy integration of code, text, and figures.
  • Includes a justfile for managing common tasks like building the website and running checks.
  • Uses typos to check for common spelling mistakes.
  • Uses Commitizen to automatically create the changelog.
  • Automates Git tagging and GitHub releases with commitizen that are based on messages following Conventional Commits.
  • Uses a MIT license for the template.
  • Run checks with pre-commit hooks to ensure consistent formatting and style across the project. It includes checks for credentials, typos, and file formatting.
  • Optionally uses the seedcase-theme Quarto extension for a standard appearance across websites.
  • Includes GitHub Actions for continuous integration, testing, and delivery for running checks, formatting, releasing, and building the website. It also includes Dependabot for keeping GitHub Action dependencies up to date.
  • Options between Netlify or GitHub Pages for hosting the website. For dealing with custom domain names, Netlify is the better choice, as the configuration is very easy to set up.
  • Includes an EditorConfig file to ensure consistent formatting across different editors.
  • High level, system and program management with uv.
  • GitHub workflows for automatically adding Pull Requests and Issues to a project board.
  • 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 website, as well as CITATION.cff file for GitHub to display the citation information on the repository page.
  • 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.
  • Uses rumdl to format Markdown files, so that they are consistent across the repository and easier to read in the raw form.
  • Uses lychee to check for broken links in the website files.

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!

Contributors

Licensing

This project is licensed under the MIT License.