Use FuncNodes
Start the UI¶
The core use case of FuncNodes is to bring arbitrary complex functionalities into a node-based no-code interface.
To start the UI simply call:
- For more options see the CLI options
This will spawn a browser window with the basic FuncNodes Interface:
First Worker¶
Create Worker¶
Workers are basically individuall programms that live within the FuncNodes framework. They are usually running completely seperated from each other and contain the necessary modules and the current state of the complete workflow.
To create a new worker simply click on the Worker
menu → New
, enter a name and click Create
.
This will create a new Worker with the given name in the Worker directory (default ~/.funcnodes/worker
) and also set up the virtual environment for the Worker.
Run Worker¶
To start the newly created Worker click on the worker name under Worker
→ select
.
You can see that the worker is active if the Nodespace
header menu and the Manage Libraries
Add Functionalities¶
FuncNodes provides its functionalities in the form of Nodes. These nodes are shipped as normal python packages with a specific layout and entry points for auto detection.
The UI currently grabs a list of available modules from our managed repository list and shows them under Manage Libraries
If you click on Manage Libraries
a window opens that shows you a List of:
- Installed modules, that are not used by the worker
- Installable modules
- Modules that are currently used by the Worker
New modules can simply added via the Add
button
If a new module is added its Shelf becomes available in the Lib
menu
Adding and working with Nodes¶
Nodes are the core components of FuncNodes and are the simples computing unit in the framework and are basically functions with Inputs and Outputs. Inputs can be either connected to other node's outputs or set manually (if the underlying datatype allows it).
Nodes can be added from the Library by selecting the specific shelf (and sub-shelf) or searched via the search bar in the lib. By double-clicking the name of the Node a new Instance is added to the Nodespace in the center.
Ones a Node is created its inputs can be set and the outputs can be connected to the inputs of other Nodes. Ones the input of a Node changes it is triggered and the created outputs are passed to connected inputs.
If you hover over inputs and outputs its current value is shown, allowing for live feedback.
To highlight what you can really do with FuncNodes plase head to the Examples