/nodify

High performance and modular controls for node based editors designed for databinding and MVVM.

Primary LanguageC#MIT LicenseMIT

Nodify

NuGet NuGet Build License C#

A collection of high performance controls for node based editors designed for MVVM.

🚀 Examples of different node-based applications

🌓 A state machine where each state represents an executable action, and each transition represents a condition for the next action to execute.

Examples/Nodify.StateMachine

StateMachine

💻 A simple "real-time" calculator where each node represents an operation that takes input and feeds its output into other nodes input.

Examples/Nodify.Calculator

Calculator

🎨 A playground application where you can try all the available settings.

Examples/Nodify.Playground

Playground

📥 Installation

Use the nuget package manager to install Nodify.

Install-Package Nodify

⭐️ Features

  • Designed from the start to work with MVVM
  • No dependencies other than WPF
  • Optimized for interactions with hundreds of nodes at once
  • Built-in dark and light themes
  • Area selection, zoom, pan with auto panning when close to edge
  • Select, move and connect nodes
  • Lots of configurable dependency properties
  • Ready for undo/redo
  • Example applications: 🎨 Playground, 🌓 State machine, 💻 Calculator

📝 Documentation

Documentation is moving here. If you want to help, you can do so by creating a pull-request to the docs branch (the easiest way is to click 'Edit this page' in the website).

Wiki - will be decommissioned soon

Helping with documentation, bug reports, pull requests or anything else is very welcome.

🎉 Showcase

Consider showing off your project to the rest of the world by using this link.