{"id":19992236,"url":"https://github.com/nonoesp/DynamoNodeModelsEssentials","last_synced_at":"2025-05-04T11:30:49.159Z","repository":{"id":69995935,"uuid":"100472152","full_name":"nonoesp/DynamoNodeModelsEssentials","owner":"nonoesp","description":"📦 Templates for advanced Dynamo package development using Node Models.","archived":false,"fork":false,"pushed_at":"2023-01-11T11:27:08.000Z","size":97,"stargazers_count":23,"open_issues_count":1,"forks_count":11,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-11T04:34:24.665Z","etag":null,"topics":["autodesk","dynamo","dynamobim","package-creation","packages","visual-programming"],"latest_commit_sha":null,"homepage":"https://nono.ma","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/nonoesp.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2017-08-16T09:25:04.000Z","updated_at":"2024-07-23T12:06:49.000Z","dependencies_parsed_at":"2023-03-02T19:45:14.495Z","dependency_job_id":null,"html_url":"https://github.com/nonoesp/DynamoNodeModelsEssentials","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonoesp%2FDynamoNodeModelsEssentials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonoesp%2FDynamoNodeModelsEssentials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonoesp%2FDynamoNodeModelsEssentials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonoesp%2FDynamoNodeModelsEssentials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nonoesp","download_url":"https://codeload.github.com/nonoesp/DynamoNodeModelsEssentials/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252329169,"owners_count":21730557,"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":["autodesk","dynamo","dynamobim","package-creation","packages","visual-programming"],"created_at":"2024-11-13T04:52:05.560Z","updated_at":"2025-05-04T11:30:49.147Z","avatar_url":"https://github.com/nonoesp.png","language":"C#","readme":"# DynamoNodeModelsEssentials\n\nThis project provides a Visual Studio template for advanced Dynamo package development using Node Models.\n\n## Nodes\n\n### Essentials\n\n- [AstReusingFunctionCall](src/Essentials/NodeModelsEssentials/EssentialsAstReusingFunctionCall.cs). This node displays a desirable way to use the AST (Abstract Syntax Tree) where function calls are executed only once and return values are re-used. (Read node summary for detailed explanation.)\n- [AstNotReusingFunctionCall](src/Essentials/NodeModelsEssentials/EssentialsAstNotReusingFunctionCall.cs). This node displays a non-desirable way to use the AST where function calls are executed multiple times and return values are not re-used. (Read node summary for detailed explanation.)\n- [DataBridge](src/Essentials/NodeModelsEssentials/EssentialsDataBridge.cs). How the data bridge pattern works in order to pass the data connected to input ports (or the data of generated for the output ports) to the `NodeModel` instance.\n- [Error](src/Essentials/NodeModelsEssentials/EssentialsError.cs). Throw a custom warning when something fails.\n- [Events](src/Essentials/NodeModelsEssentials/EssentialsEvents.cs). Execute a method of a `NodeModel` on the pre and post graph execution events of the graph.\n- [MultiOperation](src/Essentials/NodeModelsEssentials/EssentialsMultiOperation.cs). A node that calls four different functions and returns the resulting values, i.e., a multi-return `NodeModel`.\n- [Multiply](src/Essentials/NodeModelsEssentials/EssentialsMultiply.cs). A node that calls a function with two inputs and returns the resulting value.\n- [Timeout](src/Essentials/NodeModelsEssentials/EssentialsTimeout.cs). Determine the maximum duration a node can run for (and time out if it surpasses it).\n\n### Geometry\n\n- [CustomPreview](src/Essentials/NodeModelsEssentials/GeometryCustomPreview.cs). Specify how the viewport should render a custom C# class when it's returned by a Dynamo node.\n- [SurfaceFrom4Points](src/Essentials/NodeModelsEssentials/GeometrySurfaceFrom4Points.cs).\n- [UVPlanesOnSurface](src/Essentials/NodeModelsEssentials/GeometryUVPlanesOnSurface.cs).\n- [WobblySurface](src/Essentials/NodeModelsEssentials/GeometryWobblySurface.cs).\n\n### UI\n\n- [Button](src/Essentials/NodeModelsEssentials/UIButton.cs).\n- [ButtonFunction](src/Essentials/NodeModelsEssentials/UIButtonFunction.cs).\n- [CopyableWatch](src/Essentials/NodeModelsEssentials/UICopyableWatch.cs).\n- [Slider](src/Essentials/NodeModelsEssentials/UISlider.cs).\n- [SliderBound](src/Essentials/NodeModelsEssentials/UISliderBound.cs).\n- [State](src/Essentials/NodeModelsEssentials/UIState.cs).\n\n## Acknowledgments\n\nThese nodes document, in one way or another, my own learning on how to create nodes for Dynamo.\n\nThe initial template and samples provided in this project were inspired by [DynamoDS/DynamoSamples](https://github.com/DynamoDS/DynamoSamples) and [teocomi/HelloDynamo](https://github.com/teocomi/HelloDynamo). I highly recommend you to take a look at these for further learning.\n\n[Jose Luis Garcia del Castillo](http://github.com/garciadelcastillo) wrote the Surface function samples.\n\nBig thanks to the [Dynamo](http://dynamobim.org) development team.\n\n## License\n\nDynamoNodeModelsEssentials is licensed under the MIT license. (http://opensource.org/licenses/MIT)\n\n## Me\n\nI'm [Nono Martínez Alonso](http://nono.ma) ([nono.ma](http://nono.ma)), a computational designer with a penchant for design, code, and simplicity.  \nI host [The Getting Simple Podcast](https://gettingsimple.com/podcast), tweet at [@nonoesp](http://www.twitter.com/nonoesp), and sketch at [@sketch.nono.ma](http://sketch.nono.ma). If you use this, I would love to hear about it. Thanks!\n","funding_links":[],"categories":["C\\#"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnonoesp%2FDynamoNodeModelsEssentials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnonoesp%2FDynamoNodeModelsEssentials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnonoesp%2FDynamoNodeModelsEssentials/lists"}