Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

logo

MIT License PyPI Latest Release en Documentation Status

> 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.)

JAnim's core dependencies:

  • janim-backend: Provides the Rust backend for JAnim
  • typst4janim: Used internally to export Typst elements directly to JAnim

License

MIT license

Metadata

Release files for janim 5.0.0rc1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for janim 5.0.0rc1
File Size Uploaded
janim-5.0.0rc1.tar.gz 406.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for janim 5.0.0rc1
File Interpreter ABI Platform
janim-5.0.0rc1-py3-none-any.whl Python 3 none any Details

Total release size: 951.5 kB

Release files / janim-5.0.0rc1.tar.gz

Download URL janim-5.0.0rc1.tar.gz
Size 406.0 kB
Tags Source
SHA-256 checksum
How to use checksums
191a18e810b02cd15257c56549376a53e94f8c0958ec06f0d80cc5f7d8282f73
BLAKE2b-256 checksum
How to use checksums
a8071833f6191c536dfb8e5a2cc572f3cb5c6c621c7af94caf78c4bce5c3aa13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.34.2

Release files / janim-5.0.0rc1-py3-none-any.whl

Download URL janim-5.0.0rc1-py3-none-any.whl
Size 545.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
97822c8b443fd6fd967e799c9ec1da3ef44e2d67594738d17c93b3354173eb06
BLAKE2b-256 checksum
How to use checksums
92b825bbc07491a047e85d4dc5fb822ce1080e47aa080e233914a11d04e26548
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.34.2

Release history Release notifications | RSS feed

5.0.0

2 release files

This release

5.0.0rc1 This release

2 release files

4.4.2

2 release files

4.4.1

2 release files

4.4.0

2 release files

4.3.0

2 release files

4.2.0

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.10.2

2 release files

3.10.1

2 release files

3.9.2

2 release files

3.9.1

2 release files

3.9.0

2 release files

3.8.1

2 release files

3.8.0

2 release files

3.7.0

2 release files

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.9.2

2 release files

1.9.1

2 release files

1.9.0

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.0

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.5.2

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1

2 release 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