Skip to content

Releases: Alamin-H-M/manim-slides-preview

v1.7.4 — lightest, fastest build yet

Choose a tag to compare

@Alamin-H-M Alamin-H-M released this 28 Aug 06:18

🎬 Watch the 50-second demo video — one click to render, Ctrl+S to update, .pptx kept fresh in the background.

v1.7.4 — the lightest, fastest build yet

The complete, stable release of Manim Slides Preview. ~21 KB, zero dependencies, fully offline.

What it does

  • Press ▶ once on your manim-slides .py → renders and opens a live interactive preview (browser by default, or a VS Code tab / native GUI)
  • Every Ctrl+S → re-renders only the changed animations (cache) and hot-reloads the preview
  • Keeps a PowerPoint (.pptx) export updated in the background on every save
  • Restart-on-edit (same version): save a real code change while a render is running and the stale render is killed and the new code starts rendering immediately. No-op saves never interrupt; truncated partials are pruned; no error popups. Toggle: manimSlidesPreview.restartOnEdit. Also fixes a daemon freeze in manim-slides' video-reversing pool (slides > 4 s).
  • Auto-routing (same version): the Run button now detects the file's flavor — manim-slides decks render here; plain manim files are handed to the Manim Sideview extension when installed (sticky across Ctrl+S, self-correcting when you add a Slide import). Toggle: manimSlidesPreview.routePlainManim.
  • Hardened (same version): static analysis + HTTP fuzzing + race/leak testing + failure injection across the whole codebase. Fixed a fuzz-found crash in the preview server (malformed URL escape), RFC-correct video Range requests, stable server port across stop/restart, a lost scene-picker flag on queued renders, and a GUI process-table leak. Activation: 0.3 ms. All 12 automated test suites pass.

Good to know (especially if you're new)

  • No FFmpeg needed. Manim CE ≥ 0.19 encodes video with its bundled PyAV library — don't install ffmpeg for this.
  • LaTeX (MiKTeX/TeX Live) is only needed if your scenes use MathTex/Tex. Plain Text() scenes need nothing.
  • Docs are written for first-time users; the full manual + complete version log is in the PDF.

This build

Includes the beginner-clarity documentation pass and the lightest, fastest build of the extension yet (re-minified core; identical behavior, verified against the full test harness).

Latest update (same version):

  • Fixed: a multi-scene render (cached scene + new scene, e.g. a 2D deck plus a 3D scene) could freeze the background render process — and stay frozen even after restarting VS Code. A silence watchdog now detects any stuck render, restarts the daemon and automatically retries without it — you never have to close VS Code or delete files again. (New stallTimeout setting, default 5 min of total silence.)
  • New: the Output panel opens on every render with live progress bars for everything — cached ⚡, newly rendered 🎬, and the previously invisible post-processing step 📼 (concatenating/reversing slide videos), which could look like a freeze on big decks.
  • New: everything the extension does is also written to a plain-text log at .manim-slides-preview/msp.log — hit an unknown error? Open that file and search the message, or attach it when asking for help.
  • Verified: benchmarked spawn-per-render (ffmpeg-style CLI, as used by other extensions) vs the warm daemon: the daemon is ~20× faster on the Ctrl+S loop (0.1 s vs 1.8 s per cached save), so the daemon stays — now with the watchdog making it impossible to get stuck.
  • Stress-tested (same version): a heavyweight 3-scene deck (400-mobject grid, loops, wipes, updaters, plots, ambient-rotation 3D) was driven through 14 workflow scenarios — including daemon SIGKILL mid-render, save bursts, broken-scene recovery and concurrent renders. All pass with zero hangs. Fixes from this pass:
    • No-op saves are now free — unchanged Ctrl+S skips manim entirely (was ~34 s on heavy decks with updater animations, now 0.3 s)
    • Stale preview assets are auto-pruned (heavy decks used to leak MBs per edit session)
    • Multi-scene progress bars fixed — animations are numbered continuously across scenes, no more colliding/glued lines
    • The render daemon frees memory after each request and exits after 10 min idle (restarts instantly on the next render) — no more ~250 MB sitting idle forever

Files

Asset What it is
manim-slides-preview-1.7.4.vsix The extension — install this
manim-slides-preview-v1.7.4-full.zip Everything: vsix + PDF guide + one-click installers + example + full source
Manim.Slides.Preview.-.Workflow.Guide.pdf Full manual + version log

Try it in 2 minutes

example/test_deck.py (in the repo and the full ZIP) is a ~20-slide showcase running every major Manim animation family + a bonus 3D scene — open it, press ▶, pick "AllAnimations", and step through with Space.

Install: VS Code → Extensions panel → ···Install from VSIX…

v1.7.3 — manim-slides icon + 21 KB package

Choose a tag to compare

@Alamin-H-M Alamin-H-M released this 28 Aug 05:54

New icon — the manim-slides speech-bubble mark (skip-prev/skip-next arrows) inside a dark mac-style browser window: manim-slides, live, in a browser tab.

  • Redrawn as original vector art; PNG palette-optimized to 1.3 KB
  • Package slimmed to 7 files / 21.0 KB (SVG source & examples stay in the repo)
  • Zero code changesextension.min.js byte-identical to v1.7.1 (md5 verified)

Downloads

File What it is
manim-slides-preview-1.7.3.vsix Just the extension (21 KB) — VS Code → Extensions → ···Install from VSIX
manim-slides-preview-v1.7.3-full.zip Everything: .vsix + double-click installers (Windows .bat / Linux-macOS .sh) + INSTALL.txt + Workflow Guide PDF + example scene + full source (245 KB)
Manim.Slides.Preview.-.Workflow.Guide.pdf The manual on its own, with the complete version log

Fully offline — no marketplace, no account, no telemetry.

v1.7.2 — new icon

Choose a tag to compare

@Alamin-H-M Alamin-H-M released this 28 Aug 05:45

New icon — a dark mac-style browser tab with the manim-slides prev/next arrows in the lower-left corner: a literal picture of what the extension does (your slides, live, in a browser tab).

  • SVG source included (media/icon.svg), PNG exported at 128×128
  • Verified legible at 48/32/16 px on light & dark backgrounds
  • Zero code changesextension.min.js is byte-identical to v1.7.1

Install: download the .vsix → VS Code → Extensions panel → ···Install from VSIX. Fully offline.

v1.7.1 — .pptx export on by default

Choose a tag to compare

@Alamin-H-M Alamin-H-M released this 27 Aug 11:52

Clicking ▶ now automatically creates a PowerPoint (.pptx) next to your scene file, and every changed Ctrl+S silently keeps it up to date in the background.

  • Zero preview latency: export runs after the preview refreshes, via the warm daemon
  • Skipped when slides are unchanged; save bursts coalesce; atomic writes (never a half-written file)
  • Disable with manimSlidesPreview.pptxExport: false

Install: download the .vsix, then code --install-extension manim-slides-preview-1.7.1.vsix

v1.7.0 — multi-target preview + background .pptx export

Choose a tag to compare

@Alamin-H-M Alamin-H-M released this 27 Aug 11:35

Offline-installable VS Code extension for manim-slides.

Install: download the .vsix below, then code --install-extension manim-slides-preview-1.7.0.vsix

  • Preview targets in any combination: external browser / VS Code tab / native PySide6 GUI
  • Auto re-render + refresh on every Ctrl+S (with render caching + warm daemon)
  • Optional background PowerPoint (.pptx) export after every changed preview
  • 21 KB, zero runtime dependencies, MIT, AI-generated