README.md
December 20, 2025 · View on GitHub

> English < | 简体中文
Introduction
JAnim is built around the core concept of programmatic animation to create precise and smooth animations. It supports real-time editing, live preview, and a wide range of other rich features.
Inspired by manim.
Introduction video: https://www.bilibili.com/video/BV17s42137SJ/
Examples
|
|
|
Highlights
Programmatic animation
class BubbleSort(Timeline):
def construct(self):
# define items
heights = np.linspace(1.0, 6.0, 5)
np.random.seed(123456)
np.random.shuffle(heights)
rects = [
Rect(1, height,
fill_alpha=0.5)
for height in heights
]
group = Group(*rects)
group.points.arrange(aligned_edge=DOWN)
# do animations
self.show(group)
for i in range(len(heights) - 1, 0, -1):
for j in range(i):
rect1, rect2 = rects[j], rects[j + 1]
self.play(
rect1.anim.color.set(BLUE),
rect2.anim.color.set(BLUE),
duration=0.15
)
if heights[j] > heights[j + 1]:
x1 = rect1.points.box.x
x2 = rect2.points.box.x
self.play(
rect1.anim.points.set_x(x2),
rect2.anim.points.set_x(x1),
duration=0.3
)
heights[[j, j + 1]] = heights[[j + 1, j]]
rects[j], rects[j + 1] = rect2, rect1
self.play(
rect1.anim.color.set(WHITE),
rect2.anim.color.set(WHITE),
duration=0.15
)

Change the code, refresh right away

Freely control the preview progress

Installation
JAnim runs on Python 3.12+
You may install JAnim directly via
pip install janim
to install the latest version distributed on PyPI.
To install the latest development version directly from the main branch without cloning the repository, you can run:
pip install git+https://github.com/jkjkil4/JAnim.git@main
Or, to catch up with the latest development and edit the source code, you may clone this repository and install it in editable mode:
git clone https://github.com/jkjkil4/JAnim.git
cd JAnim
pip install -e .
Using JAnim
You can run the following command to see examples.
janim examples
The Documentation provides a more detailed guide on installing and using JAnim. (Note: You can change the documentation language using the flyout menu at the corner of the page.)
License
MIT license