Build pipeline: vsh-ci-build-template-xfb9n
Source commit: b74f55253e
Source message: Prepare for 0.3.2 release (#19)
🪡📦 craftbox
A collection of custom-tailored scripts and applied utilities built with Viash.
Introduction
craftbox is a curated collection of custom scripts and utilities
designed to tackle context-specific tasks.
Emphasizing the Viash principles, craftbox components aim for
reusability, reproducibility, and adherence to best
practices. Key features generally include:
- Standalone & Nextflow Ready: Components are built to run directly via the command line or be smoothly integrated into Nextflow workflows.
- Custom Implementations: Contains scripts and tools developed for particular tasks that may not be found in broader collections.
- High Quality Standards (promoted by Viash):
- Clear documentation for components and their parameters.
- Full exposure of underlying script/tool arguments for fine-grained control.
- Containerized (Docker) to ensure dependency management and a consistent, reproducible runtime environment.
- Unit tested where applicable to ensure components function as expected.
Example Usage
Viash components in craftbox can be run in various ways:
flowchart TD
A[craftbox v0.3.2] --> B(Viash Hub Launch)
A --> C(Viash CLI)
A --> D(Nextflow CLI)
A --> E(Seqera Cloud)
A --> F(As a dependency)
1. Via the Viash Hub Launch interface
You can run this component directly from the Viash Hub Launch interface.
2. Via the Viash CLI
You can run this component directly from the command line using the Viash CLI.
viash run vsh://craftbox@v0.3.2/concat_rtext -- --help
viash run vsh://craftbox@v0.3.2/concat_rtext -- \
--input path/to/input.txt \
--input path/to/compressed.txt.gz \
--output path/to/output.txt
This will run the component with the specified input files and output the results to the specified output file.
3. Via the Nextflow CLI or Seqera Cloud
You can run this component as a Nextflow pipeline.
nextflow run https://packages.viash-hub.com/vsh/craftbox \
-revision v0.3.2 \
-main-script target/nextflow/concat_rtext/main.nf \
-latest -resume \
-profile docker \
--input "path/to/input.txt;path/to/compressed.txt.gz" \
--output path/to/output.txt
Note: Make sure that the Nextflow
SCM is
set up properly. You can do this by adding the following lines to your
~/.nextflow/scm file:
providers.vsh.platform = 'gitlab'
providers.vsh.server = 'https://packages.viash-hub.com'
Tip: This will also work with Seqera Cloud or other Nextflow-compatible platforms.
4. As a dependency
In your Viash config file (config.vsh.yaml), you can add this
component as a dependency:
dependencies:
- name: concat_rtext
repository: vsh://craftbox@v0.3.2
Tip: See the Viash documentation for more details on how to use Viash components as a dependency in your own Nextflow workflows.
Contributing
Contributions are welcome! We aim to build a comprehensive collection of high-quality bioinformatics components. If you’d like to contribute, please follow these general steps:
- Find a component to contribute
- Add config template
- Fill in the metadata
- Find a suitable container
- Create help file
- Create or fetch test data
- Add arguments for the input files
- Add arguments for the output files
- Add arguments for the other arguments
- Add a Docker engine
- Write a runner script
- Create test script
- Create a
/var/software_versions.txtfile
See the CONTRIBUTING file for more details.
