Development macOS
DrawBot
Create two-dimensional graphics with Python scripts in DrawBot, a free Mac app with a code editor, output panel and page previews.
What is DrawBot?
DrawBot turns Python scripts into two-dimensional drawings on a Mac. Use its graphics commands to combine shapes, Bezier paths, text and transparency, then save the result in formats such as PDF, SVG, PNG, JPEG or TIFF. It suits learning programming through visual results and creating graphics whose layout is controlled by code.
The app brings a code editor, an output view for printed messages and tracebacks, and a preview for single-page or multi-page drawings into one workspace. The publisher describes the binary as self-contained, so a separate Python installation is not required.
This is a scripting workflow rather than a code-free drawing workflow: creating and changing graphics involves Python. The publisher documentation lists OS X 10.12 or later, but that page was last updated in February 2025; it does not establish compatibility with every current macOS release. The screenshot is from those official docs and illustrates the workspace, not a freshly tested installation.
What it offers
- Generate shapes, Bezier paths, text and transparency with Python drawing commands.
- Edit scripts and inspect printed output or error tracebacks inside the app.
- Preview the current drawing or browse pages of a multi-page document.
- Export graphics to PDF, SVG, PNG, JPEG and TIFF.
- Use the self-contained Mac application without installing Python separately.
Good to know
- Creating drawings requires writing Python scripts; the documented workflow is not code-free.
- The OS X 10.12+ requirement comes from documentation dated February 26, 2025, not a current macOS compatibility test.
Product images

Sources
References used for this listing. Retrieval dates do not indicate hands-on testing.
- DrawBot Documentation — DrawBot 3.132 ↗Retrieved
- Download — DrawBot 3.132 ↗Retrieved
- DrawBot App — DrawBot 3.132 ↗Retrieved
- DrawBot publisher release feed ↗Retrieved