All Projects → ga4gh → tool-registry-service-schemas

ga4gh / tool-registry-service-schemas

Licence: Apache-2.0 license
APIs for discovering genomics tools, their metadata and their containers

Programming Languages

shell
77523 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to tool-registry-service-schemas

dockstore
Our VM/Docker sharing infrastructure and management component
Stars: ✭ 99 (+266.67%)
Mutual labels:  cwl
wdl2cwl
[Experimental] Workflow Definition Language (WDL) to CWL
Stars: ✭ 26 (-3.7%)
Mutual labels:  cwl
vrs-python
GA4GH Variation Representation Python Implementation
Stars: ✭ 35 (+29.63%)
Mutual labels:  ga4gh
cwl-WES
Trigger CWL workflows via GA4GH WES and TES
Stars: ✭ 14 (-48.15%)
Mutual labels:  ga4gh
specification
GA4GH Beacon specification.
Stars: ✭ 31 (+14.81%)
Mutual labels:  ga4gh
cwlexec
A new open source tool to run CWL workflows on LSF
Stars: ✭ 34 (+25.93%)
Mutual labels:  cwl
user guide
The CWL v1.0 user guide
Stars: ✭ 20 (-25.93%)
Mutual labels:  cwl
reana
REANA: Reusable research data analysis platform
Stars: ✭ 86 (+218.52%)
Mutual labels:  cwl
benten
A language server for Common Workflow Language
Stars: ✭ 50 (+85.19%)
Mutual labels:  cwl
dxCompiler
WDL and CWL compiler for the DNAnexus platform
Stars: ✭ 15 (-44.44%)
Mutual labels:  cwl
tibanna
Tibanna helps you run your genomic pipelines on Amazon cloud (AWS). It is used by the 4DN DCIC (4D Nucleome Data Coordination and Integration Center) to process data. Tibanna supports CWL/WDL (w/ docker), Snakemake (w/ conda) and custom Docker/shell command.
Stars: ✭ 61 (+125.93%)
Mutual labels:  cwl
hotsub
Command line tool to run batch jobs concurrently with ETL framework on AWS or other cloud computing resources
Stars: ✭ 29 (+7.41%)
Mutual labels:  cwl
cwl-ts
Typescript data model for Common Workflow Language
Stars: ✭ 42 (+55.56%)
Mutual labels:  cwl
VIRTUS
A bioinformatics pipeline for viral transcriptome detection and quantification considering splicing.
Stars: ✭ 28 (+3.7%)
Mutual labels:  cwl
emg-viral-pipeline
VIRify: detection of phages and eukaryotic viruses from metagenomic and metatranscriptomic assemblies
Stars: ✭ 38 (+40.74%)
Mutual labels:  cwl
ipython2cwl
IPython2CWL is a tool for converting IPython Jupyter Notebooks to CWL Command Line Tools by simply providing typing annotation.
Stars: ✭ 15 (-44.44%)
Mutual labels:  cwl
scriptcwl
Create cwl workflows by writing a simple Python script
Stars: ✭ 40 (+48.15%)
Mutual labels:  cwl
GGR-cwl
CWL tools and workflows for GGR
Stars: ✭ 20 (-25.93%)
Mutual labels:  cwl
janis
[Alpha] Janis: an open source tool to machine generate type-safe CWL and WDL workflows
Stars: ✭ 35 (+29.63%)
Mutual labels:  cwl
workflows
Bioinformatics workflows developed for and used on the St. Jude Cloud project.
Stars: ✭ 16 (-40.74%)
Mutual labels:  cwl

ga4gh logo

DOI

Schemas for the GA4GH Tool Registry API

This repository is the home for the schema for the GA4GH Tool Registry API. The goal of the API is to provide a standardized way to describe the availability of tools and workflows. In this way, we can have multiple repositories that share Docker-based tools and WDL/CWL/Nextflow/Galaxy/Snakemake-based workflows and have a consistent way to interact, search, and retrieve information from these various registries. The end goal is to make it much easier to share scientific tools and workflows, enhancing our ability to make research reproducible, sharable, and transparent.

See the human-readable Reference Documentation. You can also explore the specification in the Swagger Editor. Manually load the JSON if working from a non-develop branch version. Preview documentation from the gh-openapi-docs for the development branch here

The Global Alliance for Genomics and Health (GA4GH) is an international coalition, formed to enable the sharing of genomic and clinical data.

The GA4GH Data Working Group concentrates on data representation, storage, and analysis, including working with platform development partners and industry leaders to develop standards that will facilitate interoperability.

Containers and Workflows Task Team

The Containers & Workflows working group is an informal, multi-vendor working group born out of the BOSC 2014 codefest, consisting of various organizations and individuals that have an interest in portability of data analysis workflows. Our goal is to create specifications that enable data scientists to describe analysis tools and workflows that are powerful, easy to use, portable, and support reproducibility for a variety of problem areas including data-intensive science like bioinformatics, physics, and astronomy; and business analytics such as log analysis, data mining, and ETL.

What is the Tool Registry API Schema?

This is the home of the schema for the GA4GH Tool Registry API. The GA4GH Tool Registry API is a standard for listing and describing available tools (both stand-alone, Docker-based tools as well as workflows in CWL, WDL, Nextflow, Galaxy or Snakemake) in a given registry. This defines a minimal, common API describing tools that we propose for support by multiple tool/workflow registries like Dockstore, BioContainers, and Agora for the purposes of exchange, indexing, and searching.

This repo uses the HubFlow scheme which is closely based on GitFlow. In practice, this means that the master branch contains the last production release of the schema whereas the develop branch contains the latest development changes which will end up in the next production release. As of July 2019, this means that the 1.0.0 version is described on master whereas the develop branch contains the 2.0.0-beta.3 version which will evolve into the 2.0.0 production release.

Our current proposal is to start with a read-only API due to potentially different views and approaches to registration/security.

Key features of the current API proposal:

  • read-only API
  • May serve up CWL, WDL, Nextflow, Galaxy or Snakemake to describe a tool or represent a workflow depending on the tool/workflow submitter
  • ID: globally unique across systems and also identifies the system that it came from (ex: [email protected] )

Outstanding questions:

  • How do we track authorship? Should we track authorship of the tool metadata, the Docker image, or the underlying algorithm, or all of above?
  • How to describe indexing and external services like an external sparql service.
  • Terminology discussion (do we describe triples separately from tools? should we describe them as aggregations of tools for just the case that documents have more than one tool? etc.)

How to view

See the swagger editor to view our schema in progress.

How to contribute changes

Take cues for now from the CONTRIBUTING.md document.

At the very least, create an issue in our Github tracker.

Even better, fork the codebase, fix the issue, and create a pull request back to the project along with your ticket.

Adding registries

To add a registry that supports the GA4GH Registry API:

  1. fork the repo
  2. modify registry.json
  3. submit a pull request back to the project
  4. we will confirm the site is valid then accept your pull request

Cross indexing Tool Registry sites

See our registry.json for a list of known registries that conform to the Tool Registry API standard.

License

See the LICENSE

For more information

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].