-
-
Notifications
You must be signed in to change notification settings - Fork 4
Description
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 apydra.compose.matlabmodule 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
Project lead
- Tom Close | tclose | Tom Close (snapsta_38730)
- Dorota | djarecka | Dorota?
Main Hub
Brisbane
Link to the Project pitch
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