• Stars
    star
    116
  • Rank 303,894 (Top 6 %)
  • Language
    HTML
  • License
    MIT License
  • Created almost 12 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

πŸ”¬πŸ“š Galaxy Tool wrappers

Build Status DOI

Galaxy Tool wrappers

This repository contains a variety of different tools that can be installed and used inside the Galaxy. Many tools are already included in the Galaxy Tool Shed, others needs some more love.

Wrapping tools for use in Galaxy is easy! If you want to start please see the Galaxy wiki or get in contact. If you want to contribute to this repository please see our contributing guidelines and our list of issues.

Highlights

  • ChemicalToolBox includes a lot of cheminformatic tools into Galaxy
  • RNA tools are integrated as part of the de.NBI RNA Bioinformatics Center
  • Genome Annotation tools

Other repositories with high quality tools

Running the tests

First, install Planemo. Run the commands at the project root directory.

python3 -m venv planemo
. planemo/bin/activate
pip install planemo

To run the tests for a specific tool (e.g., pca) in a specific folder (e.g. sklearn)

planemo test --biocontainers tools/sklearn/pca.xml

To run the tests for all tools in a specific folder (e.g. sklearn)

planemo test --biocontainers tools/sklearn

To run the tests for all tools in all folders

planemo test --biocontainers tools

3 steps to get your tool into Galaxy - A real-world example

In this blog post, we will explain how you can get your software tool into a Galaxy server and with this, exposed to thousands of researchers. For this purpose, we will follow David’s steps to add the very generic UNIX diff tool to Galaxy.

The first step to getting your software tool deployed into a Galaxy instance is to develop a Conda package for it. Conda is the de facto standard in many different communities to deploy software easily and reproducibly. The European Galaxy team is heavily involved in the conda-forge and Bioconda projects and Galaxy does have built-in support for both channels. If your software tool is from the Biomedical domain, we recommend the Bioconda channel. Otherwise, create a Conda package for conda-forge. Here, David has created the following Pull Request (PR) against the conda-forge repo:

Step 1 - the Conda package: conda-forge/staged-recipes#11170

After merging, a diffutils repository is created and the Conda package is available usually within 30 min.

The second step is to create the Galaxy wrapper. A Galaxy wrapper is a formal description of all inputs, outputs and parameters of your tool, so that Galaxy can generate a GUI out of it and later a command to send to the cluster. You will find a tutorial on how to create such a wrapper in the planemo documentation. The community has created a few best-practices for Galaxy wrapper development and we recommend to follow them as this will ensure your tools are high-quality and can be deployed at the big public Galaxy servers. David has created the following PR was created against a public repository that collects a variety of different tools.

Step 2 - the Galaxy wrapper: #966

We recommend the submission of your tool to one of the bigger community projects like the ones listed below. This has the advantage that you will most likely get a review and can improve your tool, but also get some infrastructure for automated testing and ToolShed deployment for free.

Other repositories with Galaxy tools:

Once David’s Galaxy wrapper PR passed all tests and was merged, it was automatically pushed to the Galaxy ToolShed, an app store for Galaxy. From there, every Galaxy instance can install tools (apps).

Furthermore, a bot is automatically creating (Bio)Containers (Docker, rkt and Singularity) by tracking all Galaxy tools to ensure that a container exists for each tool. You can see the bot in action in the following PR:

Automatic containers: BioContainers/multi-package-containers#1236

Last but not least, David wanted to get the Galaxy diff tool into the European Galaxy server. For that, a new PR was created against the tool repository from usegalaxy-eu.

Step 3 - request for installation: usegalaxy-eu/usegalaxy-eu-tools#318

Once this is merged, another bot installs all the new tools but also tool updates automatically every Saturday. As a result, the installed diff tool can be used on the European Galaxy server following this link: https://usegalaxy.eu/root?tool_id=diff

That's it - 3 steps to get your tool exposed to thousands of researchers!

More Repositories

1

docker-galaxy-stable

πŸ³πŸ“ŠπŸ“š Docker Images tracking the stable Galaxy releases.
Shell
225
star
2

awesome-ukraine-support

A list of resources and inititive to help the Ukraine
48
star
3

conda_r_skeleton_helper

Cleaning up Conda r-packages
Python
43
star
4

galaxy-rna-workbench

Galaxy RNA workbench
HTML
38
star
5

galaxy-ipython

πŸ”¬πŸ“š IPython Integration into Galaxy
Mako
32
star
6

docker-jupyter-notebook

🐳 πŸ”¬ πŸ“š Jupyter running in a docker container. This image can be used to integrate Jupyter into Galaxy
Python
30
star
7

docker-recipes

🐳 Dockerfiles to build Galaxy images
Shell
24
star
8

coding_for_big_data

X things you should take into consideration if you code for big data analysis
23
star
9

docker-ipython-notebook

🐳 πŸ”¬ πŸ“š IPython running in a docker container. This image can be used to integrate IPython into Galaxy
Python
17
star
10

docker-galaxy-imaging

🐳 Galaxy Docker repository with Imaging tools (Galaxy Imaging flavour)
Dockerfile
12
star
11

galaxy-tricks

Useful tricks and tipps for Galaxy users
11
star
12

docker-galaxy-blast

🐳 Galaxy Docker repository with NCBI Blast tools (Galaxy Blast flavour)
6
star
13

methtools

tools for the processing of genome-wide bisulfite sequencing data
Python
5
star
14

rbc_docs

RBC de.NBI documents
4
star
15

docker-busybox-bash

Minimal Docker Container with bash
Shell
4
star
16

docker-galaxy-ngs-preprocessing

πŸ³πŸ“ŠπŸ“š Docker Images for NGS data preprocessing
Dockerfile
3
star
17

test-data-registry

List, collect and reference good test datasets for tool and workflow testing
2
star
18

docker-galaxy-epigenetics

πŸ³πŸ“ŠπŸ“š Docker Images for epigenetics data analysis
2
star
19

galaxy-rna-seq

πŸ³πŸ“ŠπŸ“š Galaxy Docker Image to analyse RNA-Seq data
Dockerfile
2
star
20

docker-galaxy-chemicaltoolbox

πŸ“šπŸ³ Galaxy flavor for Cheminformatics
Dockerfile
2
star
21

pgchem_tigress

Pgchem::tigress is the chemoinformatics extension to the PostgreSQL DBMS. It enables PostgreSQL to handle molecules through SQL statements.
C++
2
star
22

docker-galaxy-exome-seq

Galaxy Docker Image for Exome sequencing
Dockerfile
2
star
23

gxtool_mapping

Python
2
star
24

argparse2galaxy

Convert a python argparse defintion in a Galaxy Tool XML
Python
2
star
25

blobtoolkit-server

Blobtoolkit server and viewer - used as interactive tools in Galaxy
Dockerfile
1
star
26

gsh

Galaxy Shell
Python
1
star
27

freiburg

Social bug tracker for cities, states and countries
1
star
28

RNAcommender

genome-wide recommendation of RNA-protein interactions
Python
1
star
29

silicos-it_store

Storage for silicos-it tarballs
1
star
30

download_store

universal storage
Python
1
star
31

docker-galaxy-phylogenetics

πŸ³πŸ“ŠπŸ“š Docker Images for molecular phylogenetics
Dockerfile
1
star
32

example_zarr

example OME-ZARR
Jupyter Notebook
1
star
33

where_does_my_trash_need_to_go

Trash sorting guide
1
star
34

docker-galaxy-ploen

Special Galaxy Docker Image for the MPI for Evolutionary Biology
1
star
35

notebooks

πŸ“š Collection of IPython notebooks
Jupyter Notebook
1
star
36

galaxy-rna-structural-analysis

Galaxy flavor for RNA structural analysis
Dockerfile
1
star
37

ipython-galaxy-publication

Our initial proposal for a Docker/IPython/Galaxy paper
TeX
1
star
38

presentations

πŸ“š talks, presentations and ideas
JavaScript
1
star
39

docker-odv

Docker image for ODV
Dockerfile
1
star