Recent

Author Topic: LazNodeEditor (visual node graph editor component )  (Read 1846 times)

CynicRus

  • Jr. Member
  • **
  • Posts: 80
LazNodeEditor (visual node graph editor component )
« on: May 18, 2026, 01:33:11 pm »
Hey everyone!
Just released a new open-source component (MIT License): LazNodeEditor — a full-featured visual node graph editor for Lazarus!
It’s cross-platform (works great on both Windows and Linux) and lets you build those cool node-based interfaces like Blueprints, Shader Editors, visual scripting tools, etc.

Features:
  • Rich inspector — edit node properties, pins, values (float, int, string, boolean, JSON)
  • Full undo/redo system with command pattern
  • Save / Load as JSON (compatible with custom nodes)
  • Snap to grid, zoom, pan, frame all, fit to selection
  • Copy / Paste / Duplicate nodes (with links)
  • Reroute nodes, Comment / Frame nodes
  • Drag & drop node creation from context menu or toolbar
  • Validation system
  • Highly extensible — easy to register your own node classes
  • Cross-platform (Windows + Linux tested)



Repo: https://github.com/CynicRus/LazNodeEditor

ALLIGATOR

  • Sr. Member
  • ****
  • Posts: 440
  • I use FPC [main] 💪🐯💪
Re: LazNodeEditor (visual node graph editor component )
« Reply #1 on: May 18, 2026, 04:48:51 pm »
Wow, that looks awesome!
I may seem rude - please don't take it personally

fcu

  • Full Member
  • ***
  • Posts: 129
Re: LazNodeEditor (visual node graph editor component )
« Reply #2 on: May 18, 2026, 07:16:40 pm »
looks cool, thanks for sharing this

ginoo

  • Full Member
  • ***
  • Posts: 166
Re: LazNodeEditor (visual node graph editor component )
« Reply #3 on: May 19, 2026, 09:44:28 am »
thanks for sharing this.I think I'll use it

gidesa

  • Sr. Member
  • ****
  • Posts: 252
Re: LazNodeEditor (visual node graph editor component )
« Reply #4 on: May 19, 2026, 02:28:41 pm »
Hello, great work, thank you!
I compiled the demo editor on Win 11 64bit, Laz 2.2.6, Fpc 3.2.2 29/10/2024.
It work well.
Some little problems with editor: if I clic on "Zoom 1:1" button, in the bottom status line I see "Zoom 157%". More, using the mouse wheel the graph change dimension, as expected, but in the status line the zoom value is updated only when clicking in the graph window.
If "Snap grid" is selected, then it's impossible to move nodes.

(there is also a strange compiler error: "PointF function not found". Indeed it should be in Types.pas, as per documentation, but it's not here! Maybe that function was added after 2024? Easily resolved adding function in LazNodeEditor.pas)



CynicRus

  • Jr. Member
  • **
  • Posts: 80
Re: LazNodeEditor (visual node graph editor component )
« Reply #5 on: May 19, 2026, 05:53:03 pm »
Hello, great work, thank you!
I compiled the demo editor on Win 11 64bit, Laz 2.2.6, Fpc 3.2.2 29/10/2024.
It work well.
Some little problems with editor: if I clic on "Zoom 1:1" button, in the bottom status line I see "Zoom 157%". More, using the mouse wheel the graph change dimension, as expected, but in the status line the zoom value is updated only when clicking in the graph window.
If "Snap grid" is selected, then it's impossible to move nodes.

(there is also a strange compiler error: "PointF function not found". Indeed it should be in Types.pas, as per documentation, but it's not here! Maybe that function was added after 2024? Easily resolved adding function in LazNodeEditor.pas)
Hi. "Snap grid" - that Snap to grid, in this mode, nodes stick to the grid.
Zoom - thank you, fixed.

tooknox

  • New Member
  • *
  • Posts: 40
Re: LazNodeEditor (visual node graph editor component )
« Reply #6 on: May 19, 2026, 06:19:31 pm »
Wow looks really cool.  8-)

gidesa

  • Sr. Member
  • ****
  • Posts: 252
Re: LazNodeEditor (visual node graph editor component )
« Reply #7 on: May 19, 2026, 06:24:36 pm »
Hi. "Snap grid" - that Snap to grid, in this mode, nodes stick to the grid.
But when I try to move a node, it move initially to closest grid vertex, ok. But then it's impossible to move to other
grid cell. So it sticks forever in a position, that is, it is unmovable. Is this the desired effect?
Quote
Zoom - thank you, fixed.

Thank you!

CynicRus

  • Jr. Member
  • **
  • Posts: 80
Re: LazNodeEditor (visual node graph editor component )
« Reply #8 on: May 19, 2026, 06:34:29 pm »
Hi. "Snap grid" - that Snap to grid, in this mode, nodes stick to the grid.
But when I try to move a node, it move initially to closest grid vertex, ok. But then it's impossible to move to other
grid cell. So it sticks forever in a position, that is, it is unmovable. Is this the desired effect?

Yep!

gidesa

  • Sr. Member
  • ****
  • Posts: 252
Re: LazNodeEditor (visual node graph editor component )
« Reply #9 on: May 19, 2026, 06:38:54 pm »
Ok.
One note: I see in Git repository the sources for Fpc 3.2.2  branch .
Files types.pp doesn't contain function PointF(). So it was added in following versions.


CynicRus

  • Jr. Member
  • **
  • Posts: 80
Re: LazNodeEditor (visual node graph editor component )
« Reply #10 on: May 19, 2026, 06:48:15 pm »
Ok.
One note: I see in Git repository the sources for Fpc 3.2.2  branch .
Files types.pp doesn't contain function PointF(). So it was added in following versions.

Ah. Thanks, fixed)

ginoo

  • Full Member
  • ***
  • Posts: 166
Re: LazNodeEditor (visual node graph editor component )
« Reply #11 on: May 20, 2026, 09:02:55 am »
It could be used to create relationships between program classes for documentation. Another bug in Linux is that if I right-click, it no longer deselects.

CynicRus

  • Jr. Member
  • **
  • Posts: 80
Re: LazNodeEditor (visual node graph editor component )
« Reply #12 on: May 20, 2026, 11:35:52 am »
It could be used to create relationships between program classes for documentation. Another bug in Linux is that if I right-click, it no longer deselects.

Thank you, fixed.

CynicRus

  • Jr. Member
  • **
  • Posts: 80
Re: LazNodeEditor (visual node graph editor component )
« Reply #13 on: May 20, 2026, 12:16:16 pm »
Hi. "Snap grid" - that Snap to grid, in this mode, nodes stick to the grid.
But when I try to move a node, it move initially to closest grid vertex, ok. But then it's impossible to move to other
grid cell. So it sticks forever in a position, that is, it is unmovable. Is this the desired effect?
Quote
Zoom - thank you, fixed.

Thank you!

After a little thought, I changed the behavior of snap to grid. Nodes can now be moved with grid snapping. Thanks!

gidesa

  • Sr. Member
  • ****
  • Posts: 252
Re: LazNodeEditor (visual node graph editor component )
« Reply #14 on: May 20, 2026, 12:36:09 pm »
But when I try to move a node, it move initially to closest grid vertex, ok. But then it's impossible to move to other
grid cell. So it sticks forever in a position, that is, it is unmovable. Is this the desired effect?

After a little thought, I changed the behavior of snap to grid. Nodes can now be moved with grid snapping. Thanks!

Great! I think this is useful when drawing. 

 

TinyPortal © 2005-2018