A homepage for the bioinformatic platform of the Max-Planck-Unit for the Science of Pathogens (MPUSP).
This website is built using Docusaurus, a modern static website generator.
All data to render the less-static parts of the website (repo and user stats) are retrieved from Github using API requests.
The website is automatically updated and built once per week, and on pull requests to the main branch.
- The website is build using the Github action
.github/workflows/deploy.yml. - The website building is tested for each PR to main with
.github/workflows/test-deploy.yml - The Github action will retrieve public data from the Github API using two scripts
src/scripts/generate_page.py: collects all relevant data and stores it instatic/data/*.jsonsrc/scripts/generate_workflow_md.py: collects relevant workflow data and renders an info page in markdown format, exported todocs/workflows/all_workflows/*.md
- static page data is located in the
docs/dir, where also new.mddocs can be added - all custom website elements and styles (cards, bar charts, etc) are located in
src/components - global color and style definitions are located in
src/css/custom.css - global header, footer, and metadata definition is located in
docusaurus.config.js
To develop the page locally, create a conda environment with the required packages:
conda create -n docusaurus -c conda-forge python pygithub jinja2 nodejs
conda activate docusaurusTo create a test page, run:
npm create-docusaurus@latest docusaurus-test classicThis command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
npm startTo build the website locally, run:
npm run buildThis command generates static content into the build directory and can be served using any static contents hosting service.
This page is loosely inspired by the conda-forge homepage, which is also built with Docusaurus and hosted on Github:
conda-forge community. (2015). The conda-forge Project: Community-based Software Distribution Built on the conda Package Format and Ecosystem [Computer software]. https://doi.org/10.5281/zenodo.4774216
Some functionality and design choices were inspired by the Snakemake Workflow Catalog, which is co-maintained by Michael Jahn (jahn@mpusp.mpg.de)
Koester, J., & Jahn, M. (2025). Snakemake Workflow Catalog (Version 1.0.0) [Computer software]. https://github.com/snakemake/snakemake-workflow-catalog