Skip to main content

turtle-widget

An animated, turtle-compatible drawing widget for Jupyter notebooks, built on anywidget.

You write ordinary turtle code in Python; the widget records each command and replays it as a smooth canvas animation right below the cell. Because it is built on anywidget, it behaves identically in VS Code, JupyterLab, Notebook 7, and Colab, and works offline. Optionally it shows the cell source beside the canvas and highlights the active line in sync with the animation (show_code=True).

Installation

# pixi
pixi workspace channel add munch-group
pixi add turtle-widget

# conda
conda install -c munch-group turtle-widget

# pip
pip install turtle-widget

Quick start

from turtle_widget import Turtle

t = Turtle()
t.speed(6)
for _ in range(4):     # a square
    t.forward(120)
    t.left(90)

The widget appears automatically at the end of the cell — no need to put t on the last line. You can also display it explicitly with t.show(), or evaluate t. Pass autoshow=False to build a turtle without displaying it (useful for headless geometry checks).

Most of the common turtle API is supported: forward/backward, left/right, goto/setheading/home, circle, pen control (penup/pendown/pensize), colours and fills (pencolor/fillcolor/begin_fill/end_fill), and markers/text (dot/stamp/write). Note that the pen-width method is pensize() (the name width is the canvas-size trait).

Multiple turtles

Two or more turtles can share one canvas — different colours, a race, one sensing the other's trail:

from turtle_widget import Turtle

t1 = Turtle()
t2 = t1.new_turtle(color="red")
t1.forward(100)
t2.forward(60)

t1.new_turtle(...) creates a turtle that draws on t1's canvas instead of building one of its own. Each turtle keeps its own position, heading, and pen; commands still animate in the order you write them, one at a time — there is no simultaneous animation.

Documentation

Full docs and a guided showcase live at munch-group.org/turtle-widget.

Development

This repo is managed with pixi:

pixi run install-dev   # editable install into the pixi environment
pixi run test          # run the pytest suite
pixi run docs          # execute the documentation notebooks
pixi run api           # build the quartodoc API reference

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

turtle_widget-1.0.5.tar.gz (847.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

turtle_widget-1.0.5-py3-none-any.whl (44.9 kB view details)

Uploaded Python 3

File details

Details for the file turtle_widget-1.0.5.tar.gz.

File metadata

  • Download URL: turtle_widget-1.0.5.tar.gz
  • Upload date:
  • Size: 847.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for turtle_widget-1.0.5.tar.gz
Algorithm Hash digest
SHA256 07b8ef1b22bec399991c39f925cb8a98c2c0f78617a9e4f25d30104b4c8b5795
MD5 2543b363c60a006d9a864abe7da8b1e8
BLAKE2b-256 7746dd57b5fa62f9652afc152d4b3dec88c11e02679cd5f0d7d38653f8a83b2d

See more details on using hashes here.

File details

Details for the file turtle_widget-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: turtle_widget-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 44.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for turtle_widget-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c862e0ee8091dc53da00cf849c2822801d4f176633693ae85b8f1a5430abcc28
MD5 0ea06740af73f4ca808d245dfb63b9ab
BLAKE2b-256 6112b6d20812238c75e2c2519eb9cd28a93e1a21e462eab8b4001eeae3ca2c90

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.9

2 files

1.0.7

2 files

This release

1.0.5 This release

2 files

1.0.3

2 files

1.0.1

2 files

0.1.28

2 files

0.1.26

2 files

0.1.24

2 files

0.1.22

2 files

0.1.20

2 files

0.1.18

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page