Skip to content

edircoli/nf-docs

 
 

Repository files navigation

nf-docs

Generate beautiful API documentation for Nextflow pipelines

Python 3.10+ License

nf-docs demo

Full documentation →

Choose from 4 different output formats:

HTML

  • Single-file output
  • Share anywhere, even offline
  • Full-text search built in

Markdown

  • Multiple files or tables by section
  • Perfect for static site generators

JSON / YAML

  • Machine-readable output
  • Build custom integrations
  • CI/CD friendly

What is nf-docs?

Important

This is not an official Nextflow project. It's a fun side-project by Phil Ewels. Please use at your own risk :)

Information is pulled from multiple sources to construct the docs (each only if available):

  • README.md - Pipeline overview and description
  • nextflow.config - Runtime configuration defaults
  • nextflow_schema.json - Typed input parameters with descriptions and validation rules
  • Language Server - Processes, workflows, functions with their Groovydoc comments
  • meta.yml - nf-core module metadata (tools, keywords, authors)

The documentation for workflows, processes and functions is relatively unique. nf-docs extracts this from your Nextflow pipelines by querying the Nextflow Language Server. It produces structured API documentation similar to Sphinx for Python or Javadoc for Java.

Examples and docs

See https://ewels.github.io/nf-docs

Quick Start

With uv:

uvx nf-docs generate ./my_pipeline

With pip:

# Install
pip install nf-docs

# Generate HTML documentation
nf-docs generate ./my_pipeline

With Bioconda (requires channel setup):

pixi global install nf-docs
# or
conda install nf-docs

That's it! Open docs/index.html in your browser.

Development

See CONTRIBUTING.md for development setup, testing, and contribution guidelines.

License

Apache 2.0 - see LICENSE for details.

About

Generate beautiful API documentation for Nextflow pipelines

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Python 74.2%
  • HTML 25.6%
  • Other 0.2%