paceholder/nodeeditor

Qt Node Editor. Dataflow programming framework

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 39 minutes ago
Added to GitGenius on September 18th, 2026
Created on April 9th, 2016
Open Issues & Pull Requests: 84 (+0)
GitHub issues: Enabled
Number of forks: 963
Total Stargazers: 3,698 (+0)
Total Subscribers: 155 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.7 days
Mean response time: 170.0 days
90th percentile: 298.2 days
Tracked items: 63

Most active contributors

Sign in to see contributor activity.

How this project is maintained

100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 83% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 29
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 696 days
Stale 30+ days: 29
Stale 90+ days: 27

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (5)
  • enhancement (3)
  • question (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

QtNodes is a Qt-based library for building node editors that support dataflow programming and general graph visualization.

The library addresses the need to create interactive node-based interfaces where data flows through connected processing nodes. It uses a Model-View architecture centered on an AbstractGraphModel class that defines the entire graph structure, allowing developers to work with arbitrary underlying data representations. For dataflow applications specifically, the DataFlowGraphModel class enables registration of processing algorithms as nodes, with automatic data propagation triggered when input arrives at any node and results flowing through output connections to update the entire graph in real time.

Developers should choose this tool if they need a Qt-based node editor with support for both simple graph visualization and complex dataflow systems. The library suits projects requiring dynamic ports, datatype-aware connections, and the ability to save and load graphs via JSON. A distinctive feature is headless mode, which allows graph creation and modification without attaching to a visual scene, useful for non-interactive processing. The tool supports both Qt 5 and Qt 6 across Linux, macOS, and Windows, with embedded widget support and layout options for vertical or horizontal graph arrangements. Version 3 represents a significant redesign from earlier versions, introducing the model-based approach and separating pure graph visualization from dataflow concerns.

The project maintains active continuous integration across multiple platforms and Qt versions. Development follows a branching strategy with separate maintenance branches for major versions while the master branch tracks the latest development state. The codebase is written in C++ and uses CMake for building, with Catch2 for testing infrastructure.