Cartan Node Library 3.7
Cartan Node Library 3.7
Attached is the latest rev of my Cartan Node Library. This file was built using over 915,000 nodes, about 1.125 MILLION connections, and over THREE MILLION lines of code in the .NDBX file, renewing its claim as the largest Nodebox network on earth! If it seems like this library is growing exponentially, that's because it is: my newest nodes were built using earlier nodes from my library, which themselves were built from even earlier nodes. The library feeds on itself to become more powerful.
Version 3.7 includes 205 library nodes. I added 20 new nodes and improved another 8 existing nodes. All nodes are free for use with no restrictions.
To use: with your current project open use File/Open Recent to open node library 3-7.ndbx in another window. Then just copy/paste the desired node from the library into your project. A few of the nodes also require adding a code library module (included).
The top section contains all 205 nodes arranged under 10 categories. The bottom section contains 205 demos. Some demos contain extra bonus nodes. TIP: if you find yourself usually only needing the nodes themselves, make a copy of the library and then delete the lower section of demos and save that as "fast library 3.7"; it will open faster.
WHAT'S NEW
Organization
- I changed the category of the bound_box node from Geometry to Alteration. This node is derived from an existing shape and is typically used in support of other work, not as an end in itself.
New Nodes
- Change_item. http://support.nodebox.net/discussions/show-your-work/955-change_it...
- Conant. http://support.nodebox.net/discussions/show-your-work/934-conant-ga...
- Fill_circles. http://support.nodebox.net/discussions/show-your-work/1006-fill-cir...
- Hierarchy (satelite nodes included in demo). http://support.nodebox.net/discussions/show-your-work/952-hierarchy...
- Child_count. Given a hierarchy, returns number of children belonging to each item
- Children. Given a hierarchy, returns the children of a given ID
- Is_leaf. Given a hierarchy and an ID, returns true if that ID is a leaf
- Leaves. Returns the leaves of a hierarchy
- Parent. Given hierarchy ID, returns its parent ID
- Tree_colors. Generate a palette of colors to differentiate each major subtree of a hierarchy
- Hier_chart. http://support.nodebox.net/discussions/show-your-work/952-hierarchy...
- Hier_map. http://support.nodebox.net/discussions/show-your-work/1003-hier_map...
- Import_hier. http://support.nodebox.net/discussions/show-your-work/991-import_hi...
- Link_path. http://support.nodebox.net/discussions/show-your-work/937-link_path
- Label_colors. http://support.nodebox.net/discussions/show-your-work/946-label-colors
- Match_list. http://support.nodebox.net/discussions/show-your-work/913-match-lis...
- Multi_switch. http://support.nodebox.net/discussions/show-your-work/988-multi_swi...
- Noise_loop. http://support.nodebox.net/discussions/show-your-work/916-noise-loo...
- Place. http://support.nodebox.net/discussions/show-your-work/958-place-node
- Place_text. http://support.nodebox.net/discussions/show-your-work/964-place_tex...
- Ripple. http://support.nodebox.net/discussions/show-your-work/931-ripple-node
- Solidify. http://support.nodebox.net/discussions/show-your-work/994-solidify
- Subtree. http://support.nodebox.net/discussions/show-your-work/982-subtree
- Sum_by_level. http://support.nodebox.net/discussions/show-your-work/973-sum-by-le...
- Subsets. http://support.nodebox.net/discussions/show-your-work/910-subsets-node
- Voronoi. http://support.nodebox.net/discussions/show-your-work/1012-voronoi-...
Improvements
- Charpath. Added option to control leading
- Concat_list. No longer requires external module; handles up to 600 strings. (Previous unlimited version still available in demo.)
- Kern. Now adjusts leading accurately when using line breaks
- Labelmaker. Removed label color control (use label_colors instead). Added ability to adjust container size.
- Mask. Now applies the color of the input path.
- Orderings. You can now change the delimiter and use an optional list of symbols
- Symbol (now "Shapes"). Renamed node, added squircle and infinity loop
- Wordpath. Added option to control leading
A PDF of the library poster showing all the nodes is attached below. Feel free to print it out and hang it over your desk!
As always, please reply to this note and let me know that you saw it. This helps me know if anyone is using this library. If you find any issues with any of these nodes, or have suggestions for improvements or new nodes, PLEASE let me know. I hope you all have as much fun using this library as I've had expanding it.
Go forth and create!
John
-
Node_Library_3.7_Screenshot.png
982 KB
- Node_Library_3.7.zip 16.3 MB
- Cartan_Node_Library_3.7_Poster.pdf 9.3 MB
Keyboard shortcuts
Generic
| ? | Show this help |
|---|---|
| ESC | Blurs the current field |
Comment Form
| r | Focus the comment reply box |
|---|---|
| ^ + ↩ | Submit the comment |
You can use Command ⌘ instead of Control ^ on Mac
Support Staff 1 Posted by john on 11 Sep, 2025 01:37 AM
Some further thoughts on Cartan Node Library 3.7...
3.7 was a special release of my library and may mark a plateau or watershed. It broke new ground in several respects:
AI MODULES
3.7 includes three new nodes that use modules partially written by Claude AI:
Thanks to Floris de Jonge for pioneering this proof of concept. It opens up a whole new territory of possibilities. External modules are challenging for Nodebox because you have to write them in the increasingly ancient 2.5 version of Python without external libraries (to avoid dependencies). Floris has demonstrated that Claude can do this.
But he has also shown that it takes some effort. Floris had to go through many drafts and prompt restatements. After that I still had to make additional improvements. And I found Claude's code good, but not great. Still, these three nodes are pretty impressive.
So now almost anything is possible. But what kind of things SHOULD we do in Nodebox (plus Python plus AI)? I get my pleasure from working entirely in Nodebox - seeing how far I can push this clean and minimal tool. I try only to use external modules when I absolutely have to. So if Claude is doing most of the work, and Nodebox is used only to call its code, are we still really doing things in Nodebox? Is it still as much fun?
The growing use of AI raises similar questions in all walks of life. When should we rub the magic lamp and when should we choose to do things ourselves?
NEW DATA TYPES
In 3.7 I extended the multi-list data type introduced in 3.6 and added a significant new data type: hierarchies. This in turn led to an explosion of new nodes and new possibilities, things I've been wanting to tackle for years.
Multi-lists and hierarchies are not TRUE data types of course; I don't have the power to make that fundamental of a change. They are actually ordinary data tables, but standardized in a way that allows a whole new ecosystem of nodes to interoperate with them. And that does make many new things feasible that were not feasible before.
GRID-BASED DESIGN
3.7 also introduced my place and place_text nodes which encourage you to change the way you think about placing shapes on a canvas. Until now, Nodebox placement has been point-based. These nodes make it possible to place shapes and paths based on a grid instead.
These are foundational nodes. It's not yet clear to me how deeply they will change my own habits, let alone anyone else's, but they do open up new possibilities.
THE SHEER SIZE OF THIS LIBRARY
With 3.7 I am reaching a tipping point. 205 nodes are, frankly, overwhelming. Even I have a hard time keeping track of them all. Studies have shown that our brains start to max out at more like 150, which happens to be about the number of original Nodebox nodes. It took me years to really master those 150 nodes. 205 more is a lot to juggle.
I am also hitting other size limits. My library now takes longer to load each time. The nodes fill the width of my laptop screen when I make them big enough to read. I broke them down into ten categories to ease browsing, but ten seems to be a limit, both space wise and cognitive load wise. My poster has now reached the extreme limit of what is possible to print to a single PDF; in fact I had some trouble even producing a PDF this time.
I'm also now approaching a million nodes. At some point, Nodebox may simply refuse to load my library.
I could go on making nodes for as long as my health holds out. But should I? I'm beginning to wonder - and would love to hear input from the rest of the community.
Taken together, these changes push the boundaries of what is possible in Nodebox, but also push the limits of what we can comfortably work with. Have we reached a limit?
Are there other ways to move forward?
What are your thoughts? Anyone?
2 Posted by abdu on 15 Sep, 2025 08:27 AM
WHA?! A MILLION NODES!!
Thank you kindly for another big update, sir!
...and no, no limits for you!
Here is little sketch of a combination of your noise + scatter bias and metaballs nodes as another way of showing my appreciation.
Support Staff 3 Posted by john on 20 Sep, 2025 01:46 AM
Thank you, Abdu. MUCH appreciated!
Your animation was fun and only scratches the surface of what is possible with just a few nodes from my library.
I sometimes think it might be amusing to roll some dice and pick, say, 3 nodes from the 205 nodes in my library at random, and then make something - anything - using those three nodes. Do that once a day - sharing the results here on the forum as you go of course - and after a month you will be a Nodebox MASTER!
Any takers?
4 Posted by abdu on 20 Sep, 2025 05:33 AM
I am even up and pumped for starting to playing with random 2 nodes, John.
This was usually the process I was ending up with btw. I guess, I am not into being a master, though :) Having so much fun over the years without knowing completely what I am doing and discovering along the way like a child is always going to be my forte.
SO, Sensei, bring it on! Maybe a new node that randomly selects 2 or more nodes from your arsenal? hM?
Support Staff 5 Posted by john on 20 Sep, 2025 09:27 AM
Abdu,
Your wish is my command.
Attached is a very simple Nodebox "app" that contains a single node: pick2nodes. Pick2nodes has a single input: seed. Set seed to ANY positive integer you like, and it will display 2 nodes from the 205 nodes in my library, chosen at random.
See screenshot.
If you want to be resolutely disciplined, you can use some system for picking a random seed (e.g. today's date as an integer) and then stick to whatever two nodes the app picks, no matter how arbitrary or uninteresting. OR you can just keep incrementing the seed until you get a pair you like.
Then pull the two nodes from my library and study the demo for each to see what they do and how they work. If you need more info, search for the node name in the forum; there should be documentation for each one.
THEN make any Nodebox network you want, using those two nodes and whatever other nodes you want. Anything goes as long as you use those two nodes.
Finally, share your creation on the forum. This is a silly project, so no one will judge whatever you make. It will be interesting, though, to see what kind of nonsense people make with two nodes chosen totally at random.
Everyone! Go forth and play!
6 Posted by abdu on 21 Sep, 2025 05:02 PM
John,
Right on!
Using date (yyyymmdd) as an integer for the seed is way to go for me.
I already started yesterday and had ton of fun with a little bit of something something. My rule of thumb for this project —I'll call it "Nodeuce"— is going to be using typographic elements if it's possible. Not gonna spam the forum each day when I roll with 'pick2nodes'. I will share some sort of a gallery for the days I have time to play the game once in a while.
Thank you for taking time making pick2nodes and encouraging as you always do.
Best,
A
Support Staff 7 Posted by john on 26 Sep, 2025 10:03 PM
Abdu,
Way cool!
I was going to ask you to tell us which two nodes you used, and then, looking closer, I see that you did: running_start and scatter_even.
I assure you that your daily creations - with brief (or rambling) explanations - would NOT be considered spam. Quite the reverse! The forum data storage has the room. This is pure gold.
Anyone else want to join in? It would be even cooler to compare and contrast what multiple people did with the same pair of nodes. I may give it a spin myself when I return from my travels.
John