![]() |
WILDS WDL Library DocumentationTechnical documentation for a centralized collection of bioinformatics WDL infrastructure providing reusable, well-tested components for genomics research. |
Welcome to the WILDS WDL Library Documentation
This site provides comprehensive technical documentation for all WDL modules, vignettes, and workflows in the WILDS WDL Library. Use the sidebar navigation to explore available components and view detailed task descriptions, inputs/outputs, and usage examples.
Navigating This Documentation
Modules - Foundational building blocks
- Tool-specific collections of reusable WDL tasks
- Each module page shows available tasks with complete parameter documentation
- Includes test workflows demonstrating basic usage
Vignettes - Integration examples
- Compact workflows combining 2-3 modules into common analysis patterns
- Demonstrates how modules work together
- Serves as templates for custom workflows
Workflows - Production pipelines
- Complete, publication-ready analysis pipelines
- Complex workflows combining multiple modules
- Ready for production use with minimal customization
Quick Start: Using Components
Importing Modules into Your Workflows
All components can be imported directly via GitHub URLs:
import "https://raw.githubusercontent.com/getwilds/wilds-wdl-library/refs/heads/main/modules/ww-sra/ww-sra.wdl" as sra_tasks
import "https://raw.githubusercontent.com/getwilds/wilds-wdl-library/refs/heads/main/modules/ww-star/ww-star.wdl" as star_tasks
workflow my_analysis {
call sra_tasks.fastqdump { input: sra_id = "SRR12345678" }
call star_tasks.star_align_two_pass {
input: sample_data = { "name": "sample1", "r1": fastqdump.r1_end, "r2": fastqdump.r2_end }
}
}
Benefits of GitHub imports:
- No local cloning required - use modules directly
- Pin to specific commits or tags for reproducibility
- Easy version switching by changing the URL
- Import only the modules you need
Running Components Locally
# Clone the repository
git clone https://github.com/getwilds/wilds-wdl-library.git
cd wilds-wdl-library
# Run a module test workflow (no inputs needed)
cd modules/ww-star
sprocket run testrun.wdl
# Run a vignette (update inputs.json as needed)
cd ../../vignettes/ww-sra-star
sprocket run ww-sra-star.wdl inputs.json
# Run a full workflow (update inputs.json as needed)
cd ../../workflows/ww-leukemia
sprocket run ww-leukemia.wdl inputs.json
Library Architecture
The WILDS WDL Library is organized into three complementary tiers:
Modules (modules/)
Purpose: Foundational building blocks for larger workflows Content: Individual bioinformatics tools (STAR, BWA, GATK, etc.) Testing: Unit tests ensure each task functions correctly Usage: Import tasks into custom workflows or run demonstration workflows
Vignettes (vignettes/)
Purpose: Educational examples of module integration Content: 2-3 modules combined into standard analysis patterns Testing: Integration tests verify modules work together Usage: Templates for common workflows or learning examples
Workflows (workflows/)
Purpose: End-to-end analyses suitable for research publications Content: Complex workflows combining multiple modules and custom logic Testing: Comprehensive validation with realistic datasets Usage: Production analyses requiring minimal customization
Supported WDL Executors
All components are tested with multiple WDL executors to ensure broad compatibility:
- Cromwell - Production-grade workflow engine
- miniWDL - Lightweight local execution
- Sprocket - Modern WDL executor with enhanced features
Container Images
All tasks use versioned, tested Docker images from the WILDS Docker Library, ensuring reproducible execution across different computing environments.
Getting Help
- Documentation Issues: Found something unclear or incorrect? Report an issue
- General Questions: Contact the Fred Hutch Data Science Lab at wilds@fredhutch.org
- Additional Resources:
- WILDS Guide - Comprehensive guides and best practices
- Contributing Guidelines - How to contribute
- GitHub Repository - Source code and development
Ready to explore? Use the sidebar to browse available modules, vignettes, and workflows. Each component page provides complete technical documentation including task signatures, parameter descriptions, and usage examples.
