Skip to content

Latest commit

 

History

History
executable file
·
34 lines (20 loc) · 3.36 KB

DrawBot.md

File metadata and controls

executable file
·
34 lines (20 loc) · 3.36 KB
layout
page

NodeBox

NodeBox is a project based on Just Van Rossum's DrawBot. NodeBox allows you to create PDF documents using Python-code. NodeBox, which is available for free, is currently used as a teaching and experimentation environment. Pretty soon we are planning to move cross-platform and server-side. Somewhat later on we'll be extending NodeBox with a node-based user interface, which has always been the original goal, and all of the ARTI (ARTifical Intelligence) we are currently working on. NodeBox can be used as a professional package as well, one that generates documents that are press-ready.

One last step would be to make NodeBox plugable, with a back-end and front-end that could be switched. There are some notes on the future of NodeBox on the blog.

NodeBox doesn't work with menus and buttons, click and drag, but with (simple) programming commands. The advantage is that you are dealing with language: concepts can easily be translated visually this way. And you have total freedom of what you do and how you do it. NodeBox can render images and vectors, call databases, transform type, surf Google, draw a million of circles within seconds, and so on.

Philosophy

The reason for the existence of programmatic software is described nicely by Erik Van Blokland (Letterror):

Volume: many assignments specifically call for a volume that is unrealistic to create in a short time. When you have large volumes like this, automating the process is something that just comes naturally, or out of laziness. The computer can work a lot faster than we can in creating 1 500 pages, so let him do it.

Complexity: sometimes, it's just not possible to create a page containing 15 000 elements that are all carefully positioned. Using templates, stylesheets and automated layout engines, we can let the computer do the layouting for us. By adjusting the layout algorithm, we adjust the complete layout, without having manually to reorder every element.

Alternatives: which brings us naturally at the third step. If we don't have to manually adjust every element to see if a completely different layout might work too, we can try out many alternatives. This is a form of "digital sketching": since the production stage is automated, you can readjust your layout, or even your concept up to the last minute.

Teaching tool

Programmin Python is relatively easy, so NodeBox is an excellent environment to confront design students with a way of designing unknown to them. Most design students at St. Lucas Antwerp run into NodeBox at a certain point.

Examples

There are some examples of NodeBox's capacities at the http://nodebox.net/code/index.php/Gallery]](NodeBox Gallery. Also, every year there is a type and technology workshop at the Lahti Institute of Design, Finland, where Lucas Nijs confronts students with typography and NodeBox.

In 2004 for example they were asked to design a 730-page book using NodeBox, results can be viewed here.