Skip to main content

Animation engine for explanatory math videos

Project description

ManimX

pypi version MIT License docs Manim Subreddit ManimX Discord

Manim is an engine for precise programmatic animations, designed for creating explanatory math videos.

Installation

Manim runs on Python 3.8 or higher.

System requirements are FFmpeg, OpenGL and LaTeX (optional, if you want to use LaTeX). For Linux, Pango along with its development headers are required. See instruction here.

Directly

# Install manimx
pip install manimx

# Try it out
manimx

For more options, take a look at the Using manim sections further below.

If you want to hack on manimx itself, clone this repository and in that directory execute:

# Install manimx
pip install -e .

# Try it out
manimx example_scenes.py OpeningManimExample
# or
manim-render example_scenes.py OpeningManimExample

Directly (Windows)

  1. Install FFmpeg.
  2. Install a LaTeX distribution. MiKTeX is recommended.
  3. Install the remaining Python packages.
    git clone https://github.com/Manim-X/manimx.git
    cd manimx
    pip install -e .
    manimx example_scenes.py OpeningManimExample
    

Mac OSX

  1. Install FFmpeg, LaTeX in terminal using homebrew.

    brew install ffmpeg mactex
    
  2. Install latest version of manimx using these command.

    git clone https://github.com/Manim-X/manimx.git
    cd manimx
    pip install -e .
    manimx example_scenes.py OpeningManimExample
    

Anaconda Install

  1. Install LaTeX as above.
  2. Create a conda environment using conda create -n manimx python=3.11.
  3. Activate the environment using conda activate manimx.
  4. Install manimx using pip install -e ..

Using manim

Try running the following:

manimx example_scenes.py OpeningManimExample

This should pop up a window playing a simple scene.

Some useful flags include:

  • -w to write the scene to a file
  • -o to write the scene to a file and open the result
  • -s to skip to the end and just show the final frame.
    • -so will save the final frame to an image and show it
  • -n <number> to skip ahead to the n'th animation of a scene.
  • -f to make the playback window fullscreen

Take a look at custom_config.yml for further configuration. To add your customization, you can either edit this file, or add another file by the same name "custom_config.yml" to whatever directory you are running manim from. There you can specify where videos should be output to, where manim should look for image files and sounds you want to read in, and other defaults regarding style and video quality.

Documentation

License

This project falls under the MIT license.

Project details


Download files

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

Source Distribution

manimx-2024.6.22.tar.gz (183.6 kB view hashes)

Uploaded Source

Built Distribution

manimx-2024.6.22-py3-none-any.whl (223.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page