NodeBox 3

NodeBox 3 (2012) is a free, cross-platform software application for creating generative graphics using an easy-to-use node-based UI. Next to writing Python code, users can creatively connect visual building blocks (or nodes) together into networks, creating visually rich compositions. free cross-platform GUI Read more »

NodeBox 2

NodeBox 2 (2008) started the conversion from code to a node-based UI. Experience through workshops and user feedback led to a new approach and NodeBox 3. No active development.

NodeBox 1

NodeBox 1 (2004, the “classic”) is a free software application for Mac OS X that generates 2D graphics (static, animated or interactive) using Python programming code. It was originally based on DrawBot, and has since become a serious playground for research in design automation and AI, with many libraries. NodeBox 1 is in “maintenace mode”: we only release new versions to fix critical issues. free Read more »

NodeBox for OpenGL

NOGL (2011) is a free, cross-platform, hardware-accelerated library for creating 2D animations using Python programming code. It is based on Pyglet and uses the NodeBox 1 API, minus the graphical user interface. It was initiated as part of a computer game project (City in a bottle). free cross-platform GPU Read more »


Pattern (2012) is a web mining module for Python. It has tools for data mining (web services for Google, Twitter and Wikipedia, web crawler, HTML DOM parser), natural language processing (part-of-speech taggers, n-gram search, sentiment analysis, WordNet), machine learning (vector space model, clustering, classification using KNN, SVM, Perceptron) and network analysis (graph centrality and visualization). free cross-platform

Design philosophy

In 2003 we created NodeBox (now cited as “NodeBox 1” or the “classic” version) to overcome limitations in existing computer graphics software. We didn’t just want to apply pre-build effects, we wanted to create our own. We wanted to connect the visual output to different input channels, such as databases, corpora and information from the WWW. This is possible in a programming language (Python), where plug-in libraries can be freely combined. This work was inspired by Processing and DrawBot.

However, not everyone is a programmer. Since NodeBox 1, different spin-off versions are in development. NodeBox 3 focuses on a flexible GUI instead of Python code. NOGL focuses on performance. The idea is to converge on one version: one that is free, cross-platform, with a node-based GUI, hardware accelerated, parallel, working on mobile devices, with both scientific and artistic functionality for robust data visualization.

Feature comparison

Version Since Platform Language Engine GUI GPU PDF PNG MOV
NodeBox 3 2012 Windows, Mac, Linux Python Java2D
NodeBox 21 2008 Windows, Mac, Linux Python Java2D
NodeBox 1 2004 Mac OS X Python Quartz2D
NOGL 2011 Windows, Mac, Linux Python OpenGL

1 No longer actively developed.


All versions of NodeBox are free software and source code is available on GitHub.