Goals: to collect and collaboratively maintain CWL CommandLineTool
descriptions of any biology/life-sciences related applications.
Non-goals: software packaging or containerization, go to https://biocontainers.pro for that
All CWL tool descriptions are licensed under the Apache 2.0 license. The underlying tools are under one or more Free and Open Source Software licenses.
Tools should follow the convention of being prefixed by the parent tool name and Camelcase like so i.e.
BWA-Mem.cwl
or BWA-Index.cwl
The first 3 lines of tool wrappers should be as follows. Our CI/CD system checks for these so make sure to include them so they can be merged into the repo.
#!/usr/bin/env cwl-runner
cwlVersion: v1.0
class: CommandLineTool
The first line allows the tool to be run as a single command.
The second specifies the cwl version.
IMPORTANT!
We are using cwlVersion
v1.0
unless a v1.1
feature is needed.
Files should be marked as executable before being added
chmod +x tool.cwl
There is a requirements section which handles settings for the runner config. Docker containers should be from biocontainers.pro if possible and placed in the hints section.
requirements:
InlineJavascriptRequirement: {}
hints:
DockerRequirement:
dockerPull: "quay.io/biocontainers/bwa:0.7.17--ha92aebf_3"
Tools need to be free of warning when running with
cwltool --validate
Please add tools via pull requests to the repository. Our CI/CD runs validation against the tools and will soon support doing unit tests on the individual tools.
Tool descriptions should be motivated by a real world use of this tool in a workflow. The description should focus on a single way of using the tool. Signs that a tool description is including too much: lots of javascript; complicated data structures; every single flag is listed.
If you use schema.org annotations, specify the schema using the RDF version: $schemas: [ http://schema.org/version/latest/schema.rdf ]
However, don't use s:mainEntity
, put that information under hints
as a SoftwareRequirement
Thanks goes to these wonderful people (emoji key):
KerstenBreuer π» |
Peter Amstutz π€ π» |
Michael Kotliar π€ π» |
pvanheus π» |
medcelerate π€ |
stain π» |
Miguel Boland π» |
fjrmoreews π» |
cjuigne π» |
MartΓn Beracochea π» |
This project follows the all-contributors specification. Contributions of any kind welcome!