Table 1:
Examples of tools and platforms to share reproducible resources
Platform and type | Use |
---|---|
Reproducible and open methods | Protocols.io(RRID:SCR_010490) is an open source protocol repository, where researchers can manage, share, tweak, optimize, and adopt existing methods even after a scientist has left a laboratory. |
RRIDs | Scicrunch.org is a platform for curating research resources that enables the user to discover, access, view, and use research objects. Users can register any research object, such as tools, antibodies, and animal models. In turn, these objects are issued a Research Resource ID (RRID), which should be cited in the manuscript. The RRID allows other users to easily locate and access the resources. |
Annotations | Hypothes.is (RRID:SCR_000430) is an open source annotation tool that allows any researcher to annotate any resource on the web, for personal use or as part of conversations available to private groups or the general public. |
Virtual machines and containers | Containers such as Docker (www.docker.com) and Singularity (https://sylabs.io/) are lightweight solutions compared to VMs because they do not encapsulate the operating system; rather, they rely on the host kernel to run required functions. Both VMs and containers are shared via image files and can be included as supplementary material at certain journals or stored in Zenodo (https://zenodo.org/, RRID:SCR_004129), Figshare (https://figshare.com/, RRID:SCR_004328), or other general-purpose archival repositories. |
Reproducible workflows | Galaxy (https://galaxyproject.org/, RRID:SCR_006281) is a computational platform that allows users to share workflows, histories, and wrapped tools in an easy-to-use and open source interface that even people without coding experience can use. |
Common workflow language (CWL) (https://www.commonwl.org, RRID:SCR_015528) is an open standard used to describe workflows and tools to make them portable and interoperable across different environments (e.g., cloud, cluster, or high-performance computing). | |
Tensorflow (https://www.tensorflow.org, RRID:SCR_016345) is an open source end-to-end machine learning platform with broad use (e.g., data, library and neural networks). Tensorflow provides workflows to develop and train models using many other programming languages. | |
Snakemake (https://snakemake.readthedocs.io/en/stable/, RRID:SCR_003475) is a tool to create reproducible and scalable data analysis workflows, with a language based on Python. Snakemake makes it easier to execute data analyses on different environments without modification of the workflow definition. | |
Package managers | Conda (https://conda.io/, RRID:SCR_018317) is a powerful open source package and management system that can quickly install, run, and update packages and their dependencies. |
Bioconda (https://bioconda.github.io/, RRID:SCR_018316) leverages Conda and is a community project and package manager dedicated to computational tools used by life science and biomedical researchers. | |
Reproducible documents and figures | Jupyter Notebook (https://jupyter.org/) allows for the creation of sharing of live code, equations, visualizations, and narrative text. The application supports >40 different programming languages and can be used to leverage big data. |
MyBinder (https://mybinder.org/, RRID:SCR_016437) is an application that collects and “binds” interactive Jupyter notebooks into a Binder repository and can also create a Docker image of the collection. | |
Stencila (https://stenci.la/) is an open source framework for executable documents and living figures (using R scripts). It supports commonly used environments and tools, such as Jupyter Notebook, RMarkdown, Python, and SQL. |