Overview
The EdgeFlow visual flow editor is where you build and manage your automation workflows. It provides a drag-and-drop interface for connecting nodes to create powerful IoT automations.
Interface Components
Canvas
The main workspace where you design your flows. Features include:
- Grid snapping - Nodes snap to a 15px grid for clean alignment
- Zoom controls - Zoom from 0.5x to 2.0x using mouse wheel or controls
- Pan navigation - Middle-click and drag or hold Space to pan
- Minimap - Bottom-right overview of your entire flow
Node Palette
Located on the left sidebar, the node palette contains all available nodes organized by category:
- Input - Trigger nodes (Inject, MQTT In, HTTP In, etc.)
- Output - Destination nodes (Debug, MQTT Out, etc.)
- Function - Data processing nodes
- Logic - Flow control nodes (Switch, If, Delay)
- GPIO - Hardware interface nodes
- Sensors - Sensor reading nodes
- Database - Data storage nodes
- Messaging - Notification nodes
- AI / ML - AI integration nodes
- Dashboard - UI widget nodes
Toolbar
The top toolbar provides quick access to common actions:
- Deploy - Deploy changes to the runtime
- Undo/Redo - Revert or restore changes
- Copy/Paste - Duplicate selected nodes
- Import/Export - Share flows as JSON
Working with Nodes
Adding Nodes
There are several ways to add nodes to your flow:
- Drag and drop - Drag a node from the palette to the canvas
- Quick add - Double-click the canvas to open the quick add menu
- Context menu - Right-click the canvas and select "Add Node"
Configuring Nodes
Double-click any node to open its configuration panel. Each node type has different properties you can set. Required fields are marked with an asterisk (*).
Connecting Nodes
Click and drag from an output port (right side) to an input port (left side) to create a connection. Connections are shown as blue curved lines with animated flow indicators.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+C | Copy selected nodes |
Ctrl+V | Paste nodes |
Ctrl+X | Cut selected nodes |
Ctrl+Z | Undo |
Ctrl+Y | Redo |
Ctrl+A | Select all nodes |
Delete | Delete selected nodes |
Ctrl+D | Deploy flow |
Space + Drag | Pan canvas |
Ctrl + Scroll | Zoom in/out |
Deploy Options
When you click Deploy, you have three options:
- Full - Redeploy all flows (restarts everything)
- Modified Flows - Only redeploy flows that changed
- Modified Nodes - Only redeploy nodes that changed
For production use, "Modified Nodes" is recommended to minimize disruption to running flows.
Tips & Best Practices
- Use descriptive names for your nodes to make flows easier to understand
- Add Comment nodes to document complex logic
- Group related nodes using Subflows for reusability
- Use the Debug node liberally during development
- Keep flows simple - split complex logic into multiple flows