Tool Development Resources
- A somewhat complete description of tags used for in tool XML files.
- A place to share your tools with the community: the Galaxy Tool Shed - more information on publishing tools to the ToolShed.
- Planemo a CLI tool to assist tool developer - easily lint, test, and preview your tools. (Quick Start, Planemo on Github)
Tool Development Training Materials - from Hsiao lab, BC Public Health Microbiology & Reference Laboratory, BC Centre for Disease Control.
- [A tutorial](/src/admin/tools/Writing Tests/index.md) on writing of functional tests
- [What to do](/src/future/Job Failure When stderr/index.md) if Galaxy incorrectly reports that your tool failed to execute
- Best Practices for Tool Development
- Discussions on consuming and producing collections of datasets in tools.
- A discussion on outputing multiple individual datasets
- Tips on writing secure tools.
Tool conversion and generation efforts:
- argparse2tool - a drop in replacement of Python's argparse to generate Galaxy tools by Helena Rasche.
- A discussion on converting common workflow language tool descriptions into Galaxy tools - with prototype by Peter Amstutz.
- If you need to run an arbitrary working script (Python, Perl, R or Bash currently supported), and optionally turn it into a proper Galaxy tool, the Tool Factory can be installed in a local Galaxy from the Main Tool Shed to instantly wrap arbitrary scripts. It will turn these into Tool Shed archives ready to upload to a new repository from where they can be automagically installed into any Galaxy. Only runs for administrative users - exposes insecure unrestricted scripting, so only install in private development clones please. Generated tools are as secure as any other Galaxy tools.
- Unavailable June 2020: A tool interface generator at http://cli-mate.lumc.nl. Github last update Aug 15, 2014 https://git.lumc.nl/humgen/cli-mate.
Popular tool repositories on github to contribute to and serve as best practice examples:
- tools-iuc - A collection of tools developed and maintained by the the Intergalactic Utilities Commission (the IUC). (Contributing to tools-iuc)
- tools-devteam - A collection of tools developed and maintained by the 'devteam'. (Contributing to tools-devteam)
- Bjoern's Galaxy Tools - A collection of tools developed and maintained by BjoernGruening. (Contributing to galaxytools)
- galaxy_blast - A best practice set of tools wrapping NCBI BLAST+ and related applications maintained by Peter Cock. (Contributing to the BLAST+ tools)
- GalaxyP Tools - A collection of tools for proteomics maintained by the GalaxyP team.