Installation
This page covers the quickest way to get Murali running and the optional tools that improve the experience.
Prerequisites​
You should have:
- a recent stable Rust toolchain
cargo- a working graphics environment for preview mode
If you do not have Rust yet, install it from the official site:
Optional but useful:
ffmpegfor MP4 and GIF assembly during exportlatexanddvisvgmif you want LaTeX text rendering
Typst does not require a separate system install in the default setup.
Add Murali To A Project​
Murali is currently consumed from GitHub:
[dependencies]
murali = { git = "https://github.com/ravishankarkumar/murali" }
anyhow = "1"
glam = "0.29"
If you want a quick scratch project:
cargo new --bin my_scene
cd my_scene
mkdir -p examples
Then add the dependency snippet above to Cargo.toml.
Verify Your Environment​
This repo includes a small doctor command that checks common external tools:
cargo run -- doctor
That is especially helpful for checking:
ffmpeglatexdvisvgm
Preview Vs Export Dependencies​
Preview mode:
- needs a working graphics environment
- does not require
ffmpeg
Export mode:
- can always render PNG frames
- uses
ffmpegwhen assembling video or GIF output
If ffmpeg is missing, Murali still exports frames and tells you where they were written.
Project Config​
Murali looks for a nearby murali.toml next to a Cargo.toml. A minimal config looks like this:
[preview]
fps = 60
[export]
fps = 60
width = 1920
height = 1080
The repo includes a sample file at murali.toml.example in the repository root.
First Run​
Once your dependency is added, the fastest next step is:
- read Your First Scene
- create
examples/my_scene.rs - run it in preview mode:
cargo run --example my_scene --release -- --preview
LaTeX Support​
LaTeX text rendering requires system tools:
latexdvisvgm
If you do not want to install them yet, use Typst or Label first.