Spring Nodes

A full refresh of one of Dynamo's most-used open source packages, for Revit 2027, bringing hundreds of nodes back into working order on the current Python engine, Design Script and Revit API.

Introduction

Spring Nodes is a the 5th most installed Dynamo package & 3rd most relied upon. Reope's Dimitar Venkov started building it years before Reope existed. Hundreds of nodes, MIT-licensed, used quietly inside firms all over the AEC industry. It was built to do two things: extend what Dynamo could do with Revit, and teach people DesignScript at a time when there were no good resources for learning it.

"I made Springs for this. There was no good way to learn DesignScript at the time, and the package was the way to teach it while also extending what Dynamo could do with Revit."

— Dimitar Venkov, Reope (original author of Spring Nodes)

All those nodes require maintenance and time is scarce. When Mark Ackerley joined the Reope team, he suggested that updating Springs would be a valuable way that Reope could support the whole Dynamo community. The rest of the team agreed and allocated the time to fix it.

This case study covers what broke, what we did about it, and what users get back.

The Problems

Across several years of Revit API changes and Dynamo Python engine changes, a meaningful share of Spring Nodes' functionality had quietly stopped working.

The clearest example is CPython3. Dynamo decided that continuing to ship IronPython2.7 was an unacceptable security risk and shifted to CPython3. Unfortunately this version of Python does not support several capabilities Spring Nodes relied on.

Drag-select inside dialogues didn't work. Pop-up dialogues lacked capability. Nodes that prompted the user to pick from a list or reorder items, ones that gave Spring Nodes a small but useful UI layer, were dead.

So the package looked alive on the package manager but didn't behave that way once you tried to use it. Reope's team uses Spring Nodes too, so we hit the same wall as everyone else before starting the fix.

The Reope team are experts many niche things such as writing zero touch nodes for Dynamo, but Spring Nodes had been written deliberately in DesignScript so people could dig around inside the nodes and learn from them. As well as Python, Designscript had also moved on, and nodes were not functioning. Losing Springs would lose both the tools and the teaching material.

Large Language Models are amazing when it comes to text and coding, and Reope carefully utilise it to optimise their workflows. Sadly, as of 2026, it is limited in the help it can give to Revit API users and Dynamo users specifically. AI is radically changing the coding landscape, and augmenting Dynamo with AI code will be very powerful, but right now the experiences are patchy. This still leaves traditional node libraries with reliable working code, tested and approved with a valuable place in a Revit automation toolkit.

Methodology

Reope went through every node, slowly and rigorously. To ensure they worked, every node was built a test graph, and a screengrab saved for user reference.

The work involved three things. First, auditing what was broken versus what still worked, on current Revit and current Dynamo. Second, fixing the broken nodes against the current Revit API and the current Python engine, keeping the DesignScript-first philosophy where possible.

Third, restoring the UI nodes (dialogues, list pickers, reorderers) that had been dark for years.

Mark took on most of the leg work, Dimitar reviewed and QA'd the work as it went.

Spring Nodes is worth keeping alive. It's MIT-licensed, written in DesignScript so people can read and learn from it, and it does things the built-in Dynamo nodes still don't. AI can write a lot of code quickly, but you still need the manual precision Dynamo gives you for the last bit of any real workflow. Spring Nodes is part of that toolset.

— Dimitar Venkov, Reope

The package manager push and deployment are automated, so the engineering effort sits in the nodes themselves, not the release pipeline.

Key Improvements

Hundreds of nodes were reviewed and updated. The user-facing wins worth calling out:

  1. UI nodes work again. Dialogues fire. Drag-select works. Nodes that pass a list in, let the user pick or reorder, and pass the result back out, all functional under the current Python engine for the first time in years.
  2. Geometry and family workflows restored. Making an in-place instance family from Dynamo works. Quad-to-tri mesh conversion works. The geometry nodes that quietly stopped doing what they said on the tin now do it again.
  3. Report parsing nodes confirmed working. The nodes that parse Revit clash detection HTML exports and warning exports are intact and useful, ones a lot of Spring Nodes users didn't know existed.
  4. Compatibility with current Revit and current Dynamo. The package targets where users actually are today, not where they were ten years ago.

Quantifiable Outcomes

Spring Nodes ships hundreds of nodes. After this refresh, the share that runs cleanly on a current install is back near where it was when the package was actively maintained. We'll add usage numbers from the package manager once we have a few weeks of post-release data.

For an individual user, the practical outcome is the one Reope cared about: you can open a graph that uses Spring Nodes, hit run, and it does what it claims.

Future Directions

Of course, the needs of our clients, and the broader Dynamo community are our main driver, and we welcome suggestions on the Springs Github. We also have the luxury of being able to make the nodes which meet our needs.

We have added a couple of new goodies for our users, including a new Excel Write node (as requested by Keith Wilkinson), Regular Expression checker and DWG Geometry node.

We're also building a Notion-hosted reference library to document the nodes properly, with screenshots of the graphs and short explanations of what each node does.

Conclusion

Spring Nodes is still a valuable tool for the Dynamo Community. It's MIT-licensed, written in DesignScript so people can read and learn from it, and it does things the built-in Dynamo nodes still don't.

AI can write a lot of code quickly, but you still need the manual precision Dynamo gives you for the last bit of any real workflow. Spring Nodes is part of that toolset.

If you use Spring Nodes, update through the package manager. If you don't, search "springs" in the package manager and have a look. If you’re not in Revit 2027, install the PythonNet3 package as well.

Enjoy!

The Reope Team

We help firms turn scattered Dynamo and pyRevit scripts into shared tools across the company. Talk to us.

Endorsed by top experts:

Sol AmourSol Amour

Sol Amour

Autodesk

Reope’s found some awesome improvements and was a joy to work with. We look forward to working more with this talented team in the future.

Magne GanzMagne Ganz

Magne Ganz

Multiconsult

Without Night Runner, we would be stuck with 'impossible' manual maintenance tasks and with models with severe deviations.It helps us automate the process of standardizing several Revit models in large projects, so the downstream processes for cost calculation and other deliveries stay consistent.

Kristján Karl KristjánssonKristján Karl Kristjánsson

Kristján Karl Kristjánsson

Nordic Office of Architecture

Reope has saved us and our clients thousands of hours by automating the standardization of our BIM deliveries. They have helped us deliver high quality data daily with minimal resource use.

Francis BrekkeFrancis Brekke

Francis Brekke

Oslo Works

The principal element of Suprematism in painting, as in architecture, is its liberation from all social or materialist tendencies. Through Suprematism, art comes into its pure and unpolluted form.

Alfonso MonederoAlfonso Monedero

Alfonso Monedero

Heatherwick Studio

Since we started working with Reope, we have been able to convert our automation ideas into real workflows. The mix of skills they have, combining architectural understanding and coding expertise, have meant they understood our struggles and were able to create solutions in such a short time, we could implement them straight away.

Sol AmourSol Amour

Sol Amour

Autodesk

Reope’s found some awesome improvements and was a joy to work with. We look forward to working more with this talented team in the future.

Magne GanzMagne Ganz

Magne Ganz

Multiconsult

Without Night Runner, we would be stuck with 'impossible' manual maintenance tasks and with models with severe deviations.It helps us automate the process of standardizing several Revit models in large projects, so the downstream processes for cost calculation and other deliveries stay consistent.

Kristján Karl KristjánssonKristján Karl Kristjánsson

Kristján Karl Kristjánsson

Nordic Office of Architecture

Reope has saved us and our clients thousands of hours by automating the standardization of our BIM deliveries. They have helped us deliver high quality data daily with minimal resource use.

Francis BrekkeFrancis Brekke

Francis Brekke

Oslo Works

The principal element of Suprematism in painting, as in architecture, is its liberation from all social or materialist tendencies. Through Suprematism, art comes into its pure and unpolluted form.

Alfonso MonederoAlfonso Monedero

Alfonso Monedero

Heatherwick Studio

Since we started working with Reope, we have been able to convert our automation ideas into real workflows. The mix of skills they have, combining architectural understanding and coding expertise, have meant they understood our struggles and were able to create solutions in such a short time, we could implement them straight away.