{"id":13522489,"url":"https://github.com/miroiu/nodify","last_synced_at":"2025-05-13T19:11:30.500Z","repository":{"id":37361906,"uuid":"290815813","full_name":"miroiu/nodify","owner":"miroiu","description":"Highly performant and modular controls for node-based editors designed for data-binding and MVVM.","archived":false,"fork":false,"pushed_at":"2025-05-07T18:14:51.000Z","size":5037,"stargazers_count":1564,"open_issues_count":20,"forks_count":259,"subscribers_count":29,"default_branch":"master","last_synced_at":"2025-05-07T19:26:42.081Z","etag":null,"topics":["calculator","controls","editor","flow-based-programming","good-first-issue","graph","graph-control","infinite-canvas","mvvm","net6","node-editor","node-graph","node-network","panning","state-machine","visual-programming","vpl","wpf","zooming"],"latest_commit_sha":null,"homepage":"https://miroiu.github.io/nodify","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/miroiu.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"miroiu","custom":["https://www.buymeacoffee.com/miroiu","https://paypal.me/miroiuemanuel"]}},"created_at":"2020-08-27T15:42:36.000Z","updated_at":"2025-05-07T18:14:51.000Z","dependencies_parsed_at":"2022-07-14T08:09:03.592Z","dependency_job_id":"c39df777-ce92-4842-b189-610ba65ca4e2","html_url":"https://github.com/miroiu/nodify","commit_stats":{"total_commits":418,"total_committers":12,"mean_commits":"34.833333333333336","dds":"0.27751196172248804","last_synced_commit":"efa15e00e859d4f756e87e8743994693844d759e"},"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miroiu%2Fnodify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miroiu%2Fnodify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miroiu%2Fnodify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miroiu%2Fnodify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/miroiu","download_url":"https://codeload.github.com/miroiu/nodify/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254010824,"owners_count":21998993,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["calculator","controls","editor","flow-based-programming","good-first-issue","graph","graph-control","infinite-canvas","mvvm","net6","node-editor","node-graph","node-network","panning","state-machine","visual-programming","vpl","wpf","zooming"],"created_at":"2024-08-01T06:00:47.887Z","updated_at":"2025-05-13T19:11:30.481Z","avatar_url":"https://github.com/miroiu.png","language":"C#","readme":"\n# Nodify \u003cimg src=\"https://user-images.githubusercontent.com/12727904/195416464-cbe7e3be-a372-4a17-a4be-a868059b9d7e.png\" width=\"120px\" alt=\"Nodify\" align=\"right\"\u003e\n\n[![NuGet](https://img.shields.io/nuget/v/Nodify?style=for-the-badge\u0026logo=nuget\u0026label=release)](https://www.nuget.org/packages/Nodify/)\n[![NuGet](https://img.shields.io/nuget/dt/Nodify?label=downloads\u0026style=for-the-badge\u0026logo=nuget)](https://www.nuget.org/packages/Nodify)\n[![License](https://img.shields.io/github/license/miroiu/nodify?style=for-the-badge)](https://github.com/miroiu/nodify/blob/master/LICENSE)\n[![C#](https://img.shields.io/static/v1?label=docs\u0026message=WIP\u0026color=orange\u0026style=for-the-badge)](https://github.com/miroiu/nodify/wiki)\n\n A collection of highly performant controls for node-based editors designed for MVVM.\n\n\u003e [!TIP]\n\u003e There is now a fantastic Avalonia port available! You can check it out [here](https://github.com/BAndysc/nodify-avalonia). Huge thanks to [BAndysc](https://github.com/BAndysc) who made this possible!\n\n## 🚀 Examples of node-based applications\n\n🔶 A canvas application where you can draw and connect shapes.\n\n\u003e [Examples/Nodify.Shapes](Examples/Nodify.Shapes)\n\n![Canvas](https://i.imgur.com/MxsACq6.gif)\n\n🎨 A playground application where you can try all the available settings.\n\n\u003e [Examples/Nodify.Playground](Examples/Nodify.Playground)\n\n![Playground](https://i.imgur.com/aqrUpuP.gif)\n\n🌓 A state machine where each state represents an executable action, and each transition represents a condition for executing the next action.\n\n\u003e [Examples/Nodify.StateMachine](Examples/Nodify.StateMachine)\n\n![StateMachine](https://i.imgur.com/nVKV5ly.gif)\n\n💻 A simple \"real-time\" calculator where each node represents an operation that takes input and feeds its output into other node's input.\n\n\u003e [Examples/Nodify.Calculator](Examples/Nodify.Calculator)\n\n![Calculator](https://i.imgur.com/jonrZAq.gif)\n\n## 📥 Installation\nUse the NuGet package manager to install Nodify.\n\n```\nInstall-Package Nodify\n```\n\n## ⭐️ Features\n \n - Designed from the start to work with **MVVM**\n - **No dependencies** other than WPF\n - **Optimized** for interactions with hundreds of nodes at once\n - Built-in dark and light **themes**\n - **Selecting**, **zooming**, **panning** with **auto panning** when close to edge\n - **Select**, **move** and **connect** nodes\n - Lots of **configurable** dependency properties\n - Ready for undo/redo\n - Example applications: 🎨 [**Playground**](Examples/Nodify.Playground), 🌓 [**State machine**](Examples/Nodify.StateMachine), 💻 [**Calculator**](Examples/Nodify.Calculator), 🔶 [**Canvas**](Examples/Nodify.Shapes)\n \n## 📝 Documentation\n\nCheck out the [wiki](https://github.com/miroiu/nodify/wiki) and the [changelog](CHANGELOG.md) in github.\n\n## ❤️ [Contributing](CONTRIBUTING.md)\n\nHelping with documentation, bug reports, pull requests or anything else is very welcome. \n","funding_links":["https://github.com/sponsors/miroiu","https://www.buymeacoffee.com/miroiu","https://paypal.me/miroiuemanuel"],"categories":[".NET Libraries"],"sub_categories":["Renderers"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiroiu%2Fnodify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiroiu%2Fnodify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiroiu%2Fnodify/lists"}