Over the course of my first internship at a VFX studio I had to learn Nuke in order to actually work with anybody, up until that point the only image compositing software I had used was Photoshop and After Effects. I spent a whole summer completely changing the way I thought about manipulating data in creative software and after going back to traditional layer-based software I found myself frustrated that many of the workflows I enjoyed over the summer simply did not carry over. Nodes allow users to work in two dimensions where they might otherwise have just one, and I found myself missing the ability to work in a completely non-destructive fashion.

Nodes bring a lot of advantages to the table, however, throughout my research I have found very little writing about implementing node-graphs into applications. Node-based software didn’t just pop up recently but I don’t think that node-graphs have been utilized to the extent that perhaps they could be. Apple, Microsoft, and Google have all created excellent guides breaking down various common UI components, but in the design world I feel that very little attention has been paid to this type of interface — possibly because as designers most of today’s industry standard tools are not node-based.

Whereas the aforementioned interaction guidelines seek to instruct developers on how to create applications that have great user experiences on their respective platform, this guide aims to provide a generalized reference to those who want to have a better understanding of nodes and how to implement them effectively. The guidelines I will set out in this document are not intended as a hard ruleset, rather they are to be expanded upon as software evolves, ideally the guide will evolve too!

I hope you find this documentation helpful, please write to me if you do! I’d love to hear your thoughts! :)

My contact information can be found on my about page.