Skip to content

From Nipype to Pydra: Modernising Workflow Engines for Neuroimaging #23

@tclose

Description

@tclose

Title

From Nipype to Pydra: Modernising Workflow Engines for Neuroimaging

Short description and the goals for the OHBM BrainHack

The neuroimaging community has long relied on Nipype to construct reproducible, modular workflows (e.g. fMRIPrep, MRIQC, dMRIPrep). While Nipype has been foundational, it carries significant technical debt: a complex execution model, outdated dependencies, and no support for dynamic task graphs. Now, with the alpha release of Pydra—a modern, Pythonic, async-ready successor first conceived at OHBM Brainhack 2018—we have the opportunity to transition to an easy to a developer-friendly, maintainable and powerful workflow engine.

This Brainhack project aims to help the field get over the activation energy needed to make Pydra the obvious choice for neuroimaging workflows, and move closer to formally sunsetting Nipype. To do this, we’ll focus on closing key feature gaps (e.g. a MATLAB Compose module, a command-line interface), migrating core interfaces and workflows, and improving documentation to support new users.

Whether you're a long-time Nipype user, an interface developer, or entirely new to workflow engines, there’s a meaningful way to contribute.

  • Matlab Compose Module for Pydra
    Add a pydra.compose.matlab module to allow integration of MATLAB tasks, similar to Nipype’s MatlabCommand. This will allow seamless inclusion of SPM or other MATLAB-based tools in Pydra workflows.

  • Command-Line Interface for Pydra
    Design and prototype a simple CLI (pydra run ..., pydra crash ...) for defining and executing workflows from the terminal. This may use click, typer, or similar libraries, and could support YAML/JSON-based workflow definitions.

  • Workflow Visualization Integration
    Inteface Pydra with the PIM-V3 visualizer workflow visualiser tool.

  • Nipype → Pydra Migration Tools
    Use the nipype2pydra converter to partially migrate Nipype interfaces and workflows into their Pydra equivalents, then test and manually edited the results.

  • Fresh Eyes on Documentation
    As a newcomer to Pydra or to workflow engines, your perspective is invaluable! Help improve onboarding materials, identify confusing sections, and contribute to or annotate the official Pydra docs.

Link to the Project

https://github.com/nipype/pydra

Image/Logo for the OHBM brainhack website

https://raw.githubusercontent.com/nipype/pydra/refs/heads/main/docs/source/_static/logo/pydra_logo.svg

Project lead

  • Tom Close | tclose | Tom Close (snapsta_38730)
  • Dorota | djarecka | Dorota?

Main Hub

Brisbane

Link to the Project pitch

slide deck

Other hubs covered by the leaders

  • Brisbane
  • Hybrid (Asia / Pacific)
  • Hybrid (Europe / Middle East / Africa)
  • Hybrid (Americas)

Skills

  • Python development
    Familiarity with functions, decorators, or writing small tools or scripts.

  • Experience with Nipype or neuroimaging tools
    Users of fMRIPrep, SPM, FSL, or BIDS Apps who can bring practical perspective on what works.

  • Interest in workflow design or reproducible pipelines
    Enthusiastic about structured, modular analysis — even if you're new to Pydra.

  • Documentation, writing, and usability
    Fresh eyes on Pydra's docs are extremely valuable — help identify rough edges or contribute clearer examples.

  • CLI or UI/UX design (optional)
    If you enjoy building interfaces or visualization tools, your input can help improve tooling like the CLI or graph visualizations.

Recommended tutorials for new contributors

https://nipype.github.io/pydra/

Good first issues

Twitter summary

From Nipype to Pydra: Help modernise neuroimaging workflows at #OHBMbrainhack! We're building cleaner, more maintainable pipelines—CLI tools, MATLAB support, migration guides & more. All skill levels welcome. 🧠💻 #neuroimaging #openScience

Short name for the Discord chat channel (~15 chars)

pydra

Please read and follow the OHBM Code of Conduct

  • I agree to follow the OHBM Code of Conduct during the hackathon

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions