How n3odym3/pipeline_creator works
Pipeline Creator is a desktop node-based toolkit for assembling and operating modular Python applications, especially for instrument control and scientific processing. The main workflow is to discover modules, arrange and connect them in the visual editor, save or load a JSON workspace, then run modules and present their outputs in windows. Supporting capabilities include background execution, decoupled Link Bus messaging, startup automation, tutorials, window docking, role-based access, and theme customization. The README documents these capabilities; sampled excerpts are partial, so uncertain internal wiring is omitted.
Main entry points: main.py Application Startup · node_editor.py Node Editor · window_base.py Module Window Base · module_registry.py Module Discovery
Components 23
Application
- Application Startup
main.py - User Role State
core/app_state.py - Login Dialog
core/login_dialog.py - Configuration
core/config_manager.py - Module Health
core/module_health_manager.py
Pipeline Authoring
- Node Editor
core/node_editor.py - Module Discovery
core/module_registry.py - Module Install / Remove
core/module_manager.py - Pipeline Editor
core/pipeline_editor.py - Node Serialization
core/node_serialization.py
Execution
- Module Window Base
core/window_base.py - Processing Base
core/processing_base.py - Viewport Process Base
core/viewport_process_base.py - Node Callbacks
core/node_callbacks.py - Link Bus
core/link_bus.py - Startup Automation
core/automation_manager.py - Example Modules
modules/Basic/Hello_world_win.py
Operator Experience
- Interactive Tutorials
core/tutorial_manager.py - Window Docking
core/fusion_manager.py - Theme Manager
config/theme_manager.py - Theme Editor
config/theme_manager_win.py
Other components
- User / Designer
- Background Process
Connections 28
- User / Designer → Application Startup: launches
- Application Startup → Configuration: reads settings
- Application Startup → Login Dialog: opens optionally
- Login Dialog → User Role State: sets role
- Application Startup → User Role State: sets default role
- Application Startup → Module Health: checks modules
- Application Startup → Module Discovery: loads workspace
- Application Startup → Startup Automation: parses startup script
- User / Designer → Node Editor: arranges modules
- Node Editor → Module Discovery: discovers modules
- User / Designer → Module Install / Remove: manages modules
- Module Install / Remove → Module Discovery: updates module set
- User / Designer → Pipeline Editor: edits workspace
- Pipeline Editor → Node Serialization: edits JSON layout
- Node Editor → Node Serialization: saves and loads
- Module Discovery → Example Modules: loads modules
- Node Editor → Node Callbacks: dispatches node actions
- Node Callbacks → Module Window Base: invokes module behavior
- Module Window Base → Processing Base: uses processing base
- Module Window Base → Viewport Process Base: uses viewport base
- Processing Base → Background Process: runs work in process
- Viewport Process Base → Background Process: runs viewport process
- Module Window Base → Link Bus: routes messages
- Startup Automation → Node Editor: automates pipeline
- User / Designer → Interactive Tutorials: follows guide
- User / Designer → Window Docking: organizes windows
- User / Designer → Theme Editor: edits appearance
- Theme Editor → Theme Manager: updates palette