https://github.com/chanzuckerberg/miniwdl
Workflow Description Language developer tools & local runner
https://github.com/chanzuckerberg/miniwdl
wdl workflow-description-language
Last synced: about 1 month ago
JSON representation
Workflow Description Language developer tools & local runner
- Host: GitHub
- URL: https://github.com/chanzuckerberg/miniwdl
- Owner: chanzuckerberg
- License: mit
- Created: 2018-08-11T05:43:50.000Z (almost 7 years ago)
- Default Branch: main
- Last Pushed: 2025-04-25T06:32:39.000Z (2 months ago)
- Last Synced: 2025-04-25T07:24:22.851Z (2 months ago)
- Topics: wdl, workflow-description-language
- Language: Python
- Homepage:
- Size: 3.05 MB
- Stars: 188
- Watchers: 13
- Forks: 55
- Open Issues: 126
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# miniwdl
**[Workflow Description Language](http://openwdl.org/) local runner & developer toolkit for Python 3.8+**
[](https://github.com/chanzuckerberg/miniwdl/blob/main/LICENSE)
[](https://github.com/chanzuckerberg/miniwdl/actions?query=workflow%3ACI)
[](https://coveralls.io/github/chanzuckerberg/miniwdl?branch=main)
[](https://miniwdl.readthedocs.io/en/latest/)## Install miniwdl
Installation requires Python 3.8+, pip (or conda) and Docker (or Podman/Singularity/udocker). Linux preferred; [macOS compatible with extra steps](https://github.com/chanzuckerberg/miniwdl/issues/145). More detail in [full documentation](https://miniwdl.readthedocs.io/en/latest/getting_started.html).
- Install with pip [](https://pypi.org/project/miniwdl/) : run `pip3 install miniwdl`
- Install with conda [](https://anaconda.org/conda-forge/miniwdl) : [setup conda-forge](https://conda-forge.org/docs/user/introduction/#how-can-i-install-packages-from-conda-forge) and run `conda install miniwdl`
- Verify your miniwdl installation: `miniwdl run_self_test`
- Install from source code for development: see [CONTRIBUTING.md](CONTRIBUTING.md)
## Use miniwdl
Run an example bioinformatics WDL pipeline using miniwdl, or learn more abut miniwdl via a short course (screencast examples). If you are new to the WDL language, see the open source `learn-wdl` course.
- [Run an example using a viral genome assembly workflow](https://miniwdl.readthedocs.io/en/latest/getting_started.html)
- [Learn miniwdl course w/screencasts](https://github.com/openwdl/learn-wdl/tree/master/6_miniwdl_course) - shown below
- [Learn WDL course w/screencasts](https://github.com/openwdl/learn-wdl)[
](https://www.youtube.com/playlist?list=PL4Q4HssKcxYv1FQJUD6D1Cu0Q1O-_S1hM)
## [Documentation](https://miniwdl.readthedocs.io/en/latest/WDL.html)
The online documentation includes a user tutorial, reference manual, and Python development codelabs: [](https://miniwdl.readthedocs.io/en/latest/WDL.html)
See the [Releases](https://github.com/chanzuckerberg/miniwdl/releases) for change logs. The [Project board](https://github.com/chanzuckerberg/miniwdl/projects/1) shows the current prioritization of [issues](https://github.com/chanzuckerberg/miniwdl/issues).
## Scaling up
The miniwdl runner schedules WDL tasks in parallel up to the CPUs & memory available on the local host; so a more-powerful host enables larger workloads. Separately-maintained projects can distribute tasks to cloud & HPC backends with a shared filesystem:
* AWS:
* [miniwdl-omics-run](https://github.com/miniwdl-ext/miniwdl-omics-run) tool for the [Amazon Omics](https://aws.amazon.com/omics/) workflow service
* [AWS Batch plugin](https://github.com/miniwdl-ext/miniwdl-aws) (DIY)
* [SLURM](https://github.com/miniwdl-ext/miniwdl-slurm)## Getting Help
* [Open an issue](https://github.com/chanzuckerberg/miniwdl/issues)
* [OpenWDL Slack](https://openwdl.slack.com/) (#miniwdl channel)
* [Bioinformatics Stack Exchange](https://bioinformatics.stackexchange.com/questions/tagged/wdl)## [Contributing](https://github.com/chanzuckerberg/miniwdl/blob/main/CONTRIBUTING.md)
Feedback and contributions to miniwdl are welcome, via issues and pull requests on this repository. See [CONTRIBUTING.md](https://github.com/chanzuckerberg/miniwdl/blob/main/CONTRIBUTING.md) for guidelines, instructions to set up your development environment, and a codebase overview.
## Security
Please disclose security issues responsibly by contacting [email protected].