A Python library for building and executing neural simulation workflows.
This project is supported by the Brain/MINDS 2.0 initiative and is being developed by the Neural Computation Unit (Doya Lab) at the Okinawa Institute of Science and Technology (OIST) in collaboration with partners.
Get a first impression of NeuroWorkflow in action:
NeuroWorkflow provides a comprehensive Python API for building and executing computational neuroscience workflows using a node-based system. The core functionality is organized as follows:
- Node Storage: All available nodes are stored in
src/neuroworkflow/nodes/ - Organization: Nodes are organized in customizable categories for easy navigation
- Extensibility: New custom nodes can be created and integrated into the system
For developers interested in extending NeuroWorkflow with custom functionality:
- 📋 Node Schema: See
NODE_SCHEMA.mdfor detailed node structure specifications - 📝 Template: Use
CustomNodeTemplate.pyas a starting point for new nodes - 📖 Tutorial: Follow
CUSTOM_NODE_TUTORIAL.mdfor step-by-step node creation guide
The following examples demonstrate how to use the NeuroWorkflow Python API to create and execute workflows:
Examples folder:
sonata_simulation.py- Basic simulation exampleneuron_optimization.py- Parameter optimization example (in development)epilepsy_rs.py- Epileptic resting state simulation using The Virtual Brain (TVB)
Notebooks folder:
01_Basic_Simulation.ipynb- Interactive basic simulation tutorialepilepsy_rs.ipynb- Interactive epileptic resting state example with TVBSNNbuilder_example1.ipynb- Spiking Neural Network building with SNNbuilder custom nodes
For users who prefer a graphical interface, NeuroWorkflow includes a comprehensive web application that provides visual workflow building capabilities.
To set up the web application, follow the detailed instructions in gui/README.md.
Node Synchronization:
- The web app requires nodes to be copied from
src/neuroworkflow/nodes/togui/workflow_backend/django-project/codes/nodes/ - This copy is regularly performed by administrators
- For developers: If you create new custom nodes, ensure they are copied to the web app directory to make them available in the GUI
Core API Synchronization:
- The Python API base code from
src/neuroworkflow/core/is also copied to the web application - Web app location:
gui/workflow_backend/django-project/codes/neuroworkflow/core/ - This ensures the web app stays synchronized with the latest API updates
This work has been presented at several conferences and workshops, receiving valuable feedback that has contributed to its ongoing development:
-
Winter Workshop
- "Towards a Generic and Open Software for Building Digital Brains"
- 📄 Poster
-
Unified Theory Workshop (May 30, 2025)
- "NeuroWorkflow: A python-based Graph Framework for Modular Brain Modeling Workflows"
- 📄 Poster
-
NEST Conference 2025 (June 17, 2025)
- "A Graph-Based, In-Memory Workflow Library for Brain/MINDS 2.0"
- 📄 Presentation Slides
-
CNS 2025 (Computational Neuroscience Society)
- "A Graph-Based, In-Memory Workflow Library for Brain/MINDS 2.0 – The Japan Digital Brain Project"
- 📄 Poster
-
RIKEN CBS Hackathon (September 28, 2025)
- "Building BrainModeling Workflows: A proof-of-concept framework"
- 📄 Hackathon Material
-
INCF/EBrains Summit
- "NeuroWorkflow: A Node-Based Framework for Scalable Computational Neuroscience with AI-Ready Infrastructure"
- 📄 Abstract
This project is licensed under the MIT License - see the LICENSE file for details.




