bruhanimate¶
Composable terminal animations for Python¶
Run a built-in effect, combine layers, or animate snapshots from your own solver. One player handles timing, input, changed-cell rendering, and terminal cleanup. Requires Python 3.13 or newer.
from bruhanimate import play
play("snow", preset="light", fps=60, updates_per_second=30)
Press q, Escape, or Ctrl+C to quit and restore the terminal.
Start here¶
New to the library? Follow Getting started to install and run a demo.
Building your own animation? Read Core concepts for state, drawing, layers, and the animation lifecycle before diving into the API.
Visualizing Advent of Code? Use Solver playback and Grid viewport to connect a snapshot generator to board drawing and interactive playback controls.
Upgrading from 0.2.x? Follow Migrating to 1.0; v1 removes the old renderers.
Contributing or publishing? Use Contributing and Release process.
Learn
- Getting started
- Discover effects, presets, and settings
- Water, smoke, cloth, and procedural worlds
- Seeded capture and recording
- SVG, PNG, GIF, and MP4 export
- Paths, pulses, and ripples
- Panels, layer clocks, and temporary overlays
- ASCII images, transitions, masks, and styling
- Animation sequences
- Core concepts