Nodify.Avalonia — .NET Desktop Node and Graph Editor

Node and graph editor controls for .NET desktop applications

Nodify.Avalonia is an open-source Avalonia control library for building node editors, graph editors, workflow designers, and visual programming tools in .NET desktop applications. It runs wherever Avalonia runs, including Windows, macOS, and Linux.

The library handles the editor surface, nodes, connectors, connections, selection, navigation, and input while your view models hold the graph data.

This library is an Avalonia port of Nodify, created by Miroiu Emanuel. These guides describe the Avalonia implementation maintained in the Nodify.Avalonia repository.

What you can build

  • Node-based editors and visual programming tools
  • Workflow and data-flow designers
  • State-machine editors
  • Diagramming and graph editing tools

Start here

  • Getting started — install the package and build a working node editor.
  • Editor — understand layers, viewport movement, selection, and commands.

Core concepts

  • Item containers position and select items on the editor surface.
  • Nodes display content and arrange input and output connectors.
  • Connectors expose connection points and report their graph coordinates.
  • Connections render links between connector anchors.

Controls and interactions

Examples

The repository includes five runnable applications:

Start an example from the repository root with:

1
dotnet run --project Examples/Nodify.Avalonia.Playground

Nodify.Avalonia workflow designer example

Nodify.Avalonia shapes canvas example

Nodify.Avalonia Playground example

Nodify.Avalonia state machine example

Nodify.Avalonia calculator example

Version requirements

Nodify.Avalonia 2.0 targets .NET 8 and depends on Avalonia 12.0.5. The package has no runtime dependency other than Avalonia.

View the project README on GitHub