ManimPresenter: More Fun Presentations from Manim and Any Video
Static slides put people to sleep. So for my presentations I render motion instead —
and present the videos themselves. ManimPresenter
is the tiny tool I built for that: a single index.html player that turns a folder
of video clips into a keyboard-navigable presentation. No video editing, no concatenation, no slide software.
The idea
Manim renders each Scene subclass to its own .mp4 file, for example
media/videos/demo/720p30/Scene1.mp4, Scene2.mp4, and so on.
I drop index.html from ManimPresenter into that same folder and open it in a browser.
It plays the clips back to back like a slideshow — right arrow advances, left arrow goes back.
Setup
Three steps, every time:
1. Copy index.html into the folder with your Scene*.mp4 files.
2. Open index.html in a browser.
3. Edit the SCENE_NUMBERS array at the top of the <script> block.
const SCENE_NUMBERS = [1, 2, 3, 4, 5];
The list order is the play order. Name your Manim classes Scene1,
Scene2, Scene3, … so they render to matching filenames, and list them in playback order.
Insert a scene without re-rendering everything
My favourite trick: the list does not need consecutive integers. To slip a new scene between
Scene2 and Scene3, I create Scene2.1 — it renders to
Scene2.1.mp4 — and add 2.1 in the right spot:
const SCENE_NUMBERS = [1, 2, 2.1, 3, 4, 5];
Every other scene and its rendered file stays untouched. I keep subdividing the same way
(Scene2.1, Scene2.2, …) as a talk grows.
Not just Manim — any video
The player does not care how a clip was made. It just loads Scene1.mp4,
Scene2.mp4, and so on. So I use the same workflow for more fun-looking presentations
built from anything:
Screen recordings, phone footage, whiteboard clips, exports from a video editor —
I rename the clips I want to Scene1.mp4, Scene2.mp4, …,
drop them in one folder with index.html, and present from the browser.
A Manim animation can sit right next to a filmed demo and a captioned meme clip, all navigable with the same keys.
Controls
Present from anywhere with a browser — I use fullscreen and these keys:
Right / Down / PageDown / Space ... Next scene (or start)
Left / Up / PageUp ................ Previous scene
Home .............................. Jump to first scene
End ............................... Jump to last scene
F ................................. Toggle fullscreen
Click video ....................... Start / play / pause
Wrap up
If your talk is already a sequence of clips, skip the slide deck: put the clips in a folder,
add index.html, and step through them live. The project is MIT-licensed at
SavithOnline/ManimPresenter —
grab index.html and have more fun presenting.