Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: science.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.5%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: snakemake
  • License: cc-by-sa-4.0
  • Language: TeX
  • Default Branch: main
  • Size: 121 MB
Statistics
  • Stars: 0
  • Watchers: 7
  • Forks: 0
  • Open Issues: 4
  • Releases: 5
Created about 1 year ago · Last pushed 9 months ago
Metadata Files
Readme Changelog Citation

README.md

License: CC BY-SA 4.0 GitHub Workflow Status (with event) Build LaTex sources. Mastodon Follow Mastodon Follow

The Snakemake Teaching Alliance

Our Mission

The Snakemake HPC Teaching Alliance is committed to advancing Open Science through inclusive, hands-on education in reproducible computing. By fostering accessible and collaborative learning environments, we aim to empower researchers across disciplines to build, share, and sustain reproducible workflows. Our teaching materials, openly available and community-driven, are designed to support diverse learners and promote best practices in high-performance computing (HPC).

Getting Started

If you are a lecturer, you can use our material under the CC-BY-SA license. The material is quite complex, please contact us for an introduction into it.

Here are some questions to address when teaching elsewhere for the first time.

Getting started / Onboarding

If you want to participate in the development: Just notify us (issue) and we will add your github account. Alternatively, you may fork the repo and create PRs from there.

Purpose

This repository contains (better: will contain) teaching material to teach for

  • workflow creators
  • workflow users
  • administrators

all tailored for HPC systems.

Development Workflow

Workflow for pull requests:

  • create or take an issue to work on (you may assign others or no one). Issues ought to be as specific as possible. We may break "big issues" into smaller ones
  • create a branch "<shortname>_<issue_number>". Only in rare case (closely related issues) bundle the work on issues into one branch. The parent branch should always be "main"
  • commit your work to branch
  • push to origin (your own fork of the snakemake-hpc-teaching-material repository)
  • create a pull request
  • assign arbitrary reviewer (or wait until someone takes on this pull reqeust)
  • (s.o. else) perform review (switch to branch and try; check the quality)
  • merge and delete source branch

Rendering Slides

In order to typeset the slides you want, you can simply run

bash $ ./render --master-tex <tex master document> -c <configfile>

Three master slide sets are offered:

  • slides/Snakemake_HPC_Users.tex - which contains a slide set tailored for users of ready-to use and non-curated workflows, their HPC parameterization and execution
  • slides/Snakemake_HPC_Creators.tex - which contains a slide set tailored for creators of new workflows.
  • `slides/SnakemakeHPCAdmins.tex'' - which contains some slides tailored to administrators to tell them some bits about Snakemake and global configurations.

A lecturer may choose to render a handout version of a slide set with the --handout flag. Handouts do not contain some images or slide overlays and are a little bit smaller than full course slide sets.

Customizing Slides

Configuration files can be found in the config folder. The "generic" one is

  • config/config_Mainz_NHR.yaml

just because it is the first. Others will follow.The file config/config_for_github.yaml is a reduced version intended for the GitHub CI runner and can otherwise be ignored.

In essence, every detail is configurable. Developers can be approached to add new details to be configurable. Any configuration file should be human readable and commented to make sense.

LaTeX specialities

This repo contains some unique commands:

  • altverb to include in-line listings code, e.g. \altverb{filename} or \altverb{--flag}. Use \texttt{Name} for project names, so: \texttt{Snakemake}, but \altverb{snakemake --slurm} to distinguish the project from the software.
  • to include parameters from the config file, use the <++name++>} expression, whre "name" can be a part of the config, e.g. course.pathtosetup.

Owner

  • Name: Snakemake
  • Login: snakemake
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this teaching material, please cite it as below."
authors:
- family-names: "Petersen"
  given-names: "Malte"
  orcid: "https://orcid.org/0000-0001-7601-9873"
- family-names: "Hellmann"
  given-names: "Sören Lukas"
  orcid: "https://orcid.org/0000-0003-4958-1419"
- family-names: "Böker"
  given-names: "Florian"
  orcid: "https://orcid.org/0000-0002-0732-6914"
- family-names: "Brand"
  given-names: "Fabian"
  orcid: "https://orcid.org/0000-0003-1885-7021"
- family-names: "Sharma"
  given-names: "Aasish Kumar"
  orcid: "https://orcid.org/0000-0002-7514-2340"
- family-names: "Pleico"
  given-names: "Martin Leandro"
  orcid: "https://orcid.org/0000-0002-8427-0221"
- family-names: "Köster"
  given-names: "Johannes"
  orcid: "https://orcid.org/0000-0001-9818-9320"
- family-names: "Meesters"
  given-names: "Christian"
  orcid: "https://orcid.org/0000-0003-2408-7588"
title: "Teaching Reproducible Data Analysis for HPC Users -- The Snakemake Teaching Alliance "
version: 1.0
doi: https://doi.org/10.14279/eceasst.v83.2600 
date-released: 2025-02-21
url: "https://github.com/snakemake/snakemake-hpc-teaching-material/"

GitHub Events

Total
  • Create event: 38
  • Commit comment event: 229
  • Release event: 4
  • Issues event: 10
  • Watch event: 4
  • Delete event: 30
  • Member event: 6
  • Issue comment event: 111
  • Push event: 130
  • Pull request event: 74
  • Pull request review comment event: 144
  • Pull request review event: 135
Last Year
  • Create event: 38
  • Commit comment event: 229
  • Release event: 4
  • Issues event: 10
  • Watch event: 4
  • Delete event: 30
  • Member event: 6
  • Issue comment event: 111
  • Push event: 130
  • Pull request event: 74
  • Pull request review comment event: 144
  • Pull request review event: 135

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 51
  • Total pull requests: 107
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 21 days
  • Total issue authors: 2
  • Total pull request authors: 4
  • Average comments per issue: 1.24
  • Average comments per pull request: 1.91
  • Merged pull requests: 97
  • Bot issues: 0
  • Bot pull requests: 12
Past Year
  • Issues: 3
  • Pull requests: 56
  • Average time to close issues: N/A
  • Average time to close pull requests: 19 days
  • Issue authors: 1
  • Pull request authors: 3
  • Average comments per issue: 0.0
  • Average comments per pull request: 2.8
  • Merged pull requests: 48
  • Bot issues: 0
  • Bot pull requests: 10
Top Authors
Issue Authors
  • cmeesters (41)
  • mptrsen (4)
  • mlpgwdg (1)
Pull Request Authors
  • cmeesters (138)
  • github-actions[bot] (23)
  • mptrsen (7)
  • johanneskoester (2)
  • brand-fabian (2)
Top Labels
Issue Labels
enhancement (14) roadmap (5) content (3) question (1)
Pull Request Labels
autorelease: pending (16) enhancement (9) autorelease: tagged (7) bug (1)

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v4 composite
  • actions/upload-artifact v4 composite
  • beni69/artifact-link v1 composite
.github/workflows/conventional-pr.yml actions
  • amannn/action-semantic-pull-request v3.4.0 composite
.github/workflows/post_to_mastodon.yml actions
.github/workflows/release-please.yml actions
  • GoogleCloudPlatform/release-please-action v4 composite
  • actions/download-artifact v4 composite
setup_creators/environment.yaml conda
  • bcftools >=1.19
  • black
  • bwa 0.7.17.*
  • graphviz
  • jinja2
  • matplotlib
  • pygments
  • samtools 1.19.2.*
  • seaborn
  • snakefmt
  • snakemake-executor-plugin-slurm
  • snakemake-minimal >=8.4.4
  • snakemake-storage-plugin-fs