{"id":14960791,"url":"https://github.com/gentlymad-studios/newgraph","last_synced_at":"2025-05-16T14:05:48.719Z","repository":{"id":104188224,"uuid":"603475298","full_name":"Gentlymad-Studios/NewGraph","owner":"Gentlymad-Studios","description":"A general node graph solution centered on data management. This is based on the idea to visualize complex data structures as graph networks without having to modify already established data classes.","archived":false,"fork":false,"pushed_at":"2025-02-07T15:04:30.000Z","size":293,"stargazers_count":292,"open_issues_count":28,"forks_count":24,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-16T14:05:41.515Z","etag":null,"topics":["graph","node","nodegraph-framework","uielements","uitoolkit","unity","unity-editor","unity3d"],"latest_commit_sha":null,"homepage":"","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/Gentlymad-Studios.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2023-02-18T16:19:39.000Z","updated_at":"2025-05-14T08:06:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"95b9af70-64bf-40de-9854-42350ad87bb8","html_url":"https://github.com/Gentlymad-Studios/NewGraph","commit_stats":{"total_commits":137,"total_committers":6,"mean_commits":"22.833333333333332","dds":0.2773722627737226,"last_synced_commit":"d41b4e6e293167efca088f6412c29739ea199223"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gentlymad-Studios%2FNewGraph","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gentlymad-Studios%2FNewGraph/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gentlymad-Studios%2FNewGraph/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gentlymad-Studios%2FNewGraph/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gentlymad-Studios","download_url":"https://codeload.github.com/Gentlymad-Studios/NewGraph/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254544146,"owners_count":22088807,"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":["graph","node","nodegraph-framework","uielements","uitoolkit","unity","unity-editor","unity3d"],"created_at":"2024-09-24T13:23:01.271Z","updated_at":"2025-05-16T14:05:43.708Z","avatar_url":"https://github.com/Gentlymad-Studios.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NewGraph\n![UnityVersion](https://img.shields.io/static/v1?label=unity\u0026message=2022.2%2B\u0026color=blue\u0026style=flat\u0026logo=Unity)\n![Version](https://img.shields.io/github/package-json/v/Gentlymad-Studios/NewGraph)\n![GitHub last commit](https://img.shields.io/github/last-commit/Gentlymad-Studios/NewGraph)\n![GitHub](https://img.shields.io/github/license/Gentlymad-Studios/NewGraph)\n[![GitHub issues](https://img.shields.io/github/issues-raw/Gentlymad-Studios/NewGraph)](https://github.com/Gentlymad-Studios/NewGraph/blob/main/CHANGELOG.md)\n![image](https://user-images.githubusercontent.com/530629/219878506-2a12f872-cf5b-468e-8982-066c742bb8e7.png)\nNewGraph is a data-oriented node graph solution for **Unity** powered by **UIToolkit (UIElements)**. This is based on the idea to visualize complex data structures as graph networks without having to modify already established data classes, except adding `[Node]`, `[Port]`, `[PortList]` and `[SerializeReference]` attributes to all classes that should show in the Graph View.\n\n_This is planned to receive long term support as it is an integral part of our internal suite of tools at Gentlymad Studios._\n\n### Changelog 📢\nSee the [Changelog](https://github.com/Gentlymad-Studios/NewGraph/blob/main/CHANGELOG.md) for current updates!\n\n### Requirements 🌵\n1. [GraphViewBase](https://github.com/Gentlymad-Studios/GraphViewBase)\n2. [OdinSerializer](https://github.com/Gentlymad-Studios/OdinSerializer) (Original OdinSerializer repository: https://github.com/TeamSirenix/odin-serializer)\n3. This project requires ![UnityVersion](https://img.shields.io/static/v1?label=unity\u0026message=2022.2%2B\u0026color=blue\u0026style=flat\u0026logo=Unity) (or later) as the Unity version.\n\n### Features 🍒\n* `WYSIWYG.` A port connecting to a node in the graph is a `real reference` to the object in your `graph .asset`\n* Good performance even with many nodes as this is built upon  the new retained `UIToolkit` UI system.\n* create visual data oriented networks based on your custom `[Serializable]` data classes simply by `adding attributes`.\n* `Fully serialized dynamic lists` of ports with the [`[PortList]`](https://github.com/Gentlymad-Studios/NewGraph/wiki/2.-Usage-%F0%9F%91%88#portlist) attribute.\n* Customize data visualization with [`[GraphDisplay]`](https://github.com/Gentlymad-Studios/NewGraph/wiki/2.-Usage-%F0%9F%91%88#graphdisplay): Display a field inside the graph, side inspector or both views.\n* Full support of Unity's native `Undo/Redo` stack.\n* Support for `Utility Nodes` that can be created to help organize your specific graph business.\n* `Copy \u0026 Paste` even across graphs.\n* No child `ScriptableObject` mayhem! A graph asset will hold all your data in `one single scriptable object`.\n* `Cyclic references` and `complex reference chains` are natively supported with the use of [SerializeReference] attribute.\n* `No reliance` on the now deprecated `Experimental.GraphView`. Everything was written from scratch or is based on maintainable code.\n* `Keyboard shortcuts`, a `searchable context menu`, default UtilityNodes like [`CommentNode`](https://github.com/Gentlymad-Studios/NewGraph/wiki/2.-Usage-%F0%9F%91%88#commentnode), [`GroupCommentNode`](https://github.com/Gentlymad-Studios/NewGraph/wiki/2.-Usage-%F0%9F%91%88#groupcommentnode), a extensively commented code base and more...\n\n### Wiki 📒\nSee the [Wiki](https://github.com/Gentlymad-Studios/NewGraph/wiki) for installation \u0026 usage instructions.\n\n~ Use at your own risk. ~\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgentlymad-studios%2Fnewgraph","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgentlymad-studios%2Fnewgraph","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgentlymad-studios%2Fnewgraph/lists"}