Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
drawBot touch version number Jun 8, 2018
examples made star example compatible with py3 Jan 19, 2018
tests update test data related to a change in the tabs behaviour May 28, 2018
.gitignore a manual version of #33 (there were two conflicts). I am not sure wha… Dec 22, 2017 fix 'Open in DrawBot' to work in Py3. Fixes #184 Jan 30, 2018 udpate readme Jun 8, 2018
license.txt updating license text Jan 6, 2015
rtd-requirements.txt rename setup file Jun 8, 2018


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.



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