Generate vector graphics with Python


Shoebot is a Python graphics robot. Instead of drawing with your mouse, you write code to create images. The syntax is simple and aimed at people without a specific programming background -- though its advanced features might be useful for code ninjas too!

It takes a Python script as input, which describes a drawing process, and outputs a vector graphic in a common open standard format: SVG, PDF, PostScript or PNG. It works through simple text files, and scripts can describe their own GUIs for controlling variables interactively. It can also be used as a Python module, a plugin for Python-scriptable tools such as Inkscape, and run from the command line without a GUI for automated tasks.

Shoebot is a port/rewrite of Nodebox 1. It was also inspired by DrawBot and Shoes. Thus, "Shoebot".


Download .zip Download .tar.gz View on GitHub


You can find the current docs at ReadTheDocs. The Getting Started page is the best entry point to get acquainted with Shoebot.

The full command reference is an ongoing effort. For all the commands, see the Nodebox 1 reference. It's the best available resource while we work on the Shoebot documentation site.

The Shoebot documentation has pointers on what you can do with Shoebot, such as:

For another great intro to the Nodebox/Shoebot language, be sure to check the original Nodebox tutorials.



Copyright © 2007-2018 The Shoebot authors (Stuart Axon, Dave Crossland, Francesco Fantoni, Ricardo Lafuente, Sebastian Oliva and others). Originally developed by Ricardo Lafuente with the support of the Piet Zwart Institute, Rotterdam.

It is made available under the GNU General Public License.