Skip to content
Switch branches/tags
Go to file
Cannot retrieve contributors at this time

DrawBot Test Bench DrawBot App Builder codecov


DrawBot is a powerful, free application for macOS that invites you to write Python scripts to generate two-dimensional graphics. The built-in graphics primitives support rectangles, ovals, (bezier) paths, polygons, text objects, colors, transparency and much more. You can program multi-page documents and stop-motion animations. Export formats include PDF, SVG, PNG, JPEG, TIFF, animated GIF and MP4 video.

To download the latest version of the app, go to

Using DrawBot as a Python module

DrawBot can also be installed as a Python module, the app is not required.


The easiest way is to use pip:

$ pip install git+

To install it manually, follow these instructions:


run cd <path/where/you/have/downloaded/and/unzipped/drawBot> run python install


import drawBot

drawBot.newPage(1000, 1000)
drawBot.rect(10, 10, 100, 100)

It is adviced to start with newDrawing() and end with endDrawing(), to clear the instruction stack and remove installed fonts.

Compile DrawBot from source

compile (with UI)

Required packages:

(Most of these are available through pip.)


DrawBot is compiled with py2app into an application package.

cd path/To/drawBot
python py2app

compile drawBot Python module only

This module only works on Mac OS as it requires PyObjC, AppKit, CoreText Quartz and more.

Required packages:


cd path/To/drawBot
python install

Release protocol