You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(ai): introduce AI-powered explanation system and structural node support
- Implement `ExplainPanel` and `scene_explainer` to generate AI-driven summaries for animations, selected nodes, and project history.
- Add "Learning Mode" and "Teacher Mode" settings for automated educational feedback and structured lesson notes.
- Overhaul `AINodeIntegrator` to support `PLAY` and `WAIT` structural nodes, improving Manim-to-node graph conversion.
- Enhance `VideoOutputPanel` with play/pause controls, improved slider synchronization, and state management.
- Expand `SnippetLibrary` with templates for Axes, MathTex transforms, NumberPlanes, and Parametric curves.
- Expose new `explain.*` commands via the Manim Command Protocol (MCP).
- Update README and documentation to reflect the new learning-first architecture.
**Key Changes:**
- **AI Explanations:** Integrated system for explaining "why" and "how" animations work in the UI and MCP.
- **Structural Nodes:** Node graph now explicitly represents `play()` and `wait()` calls for precise animation timing.
- **Learning & Teacher Modes:** New settings triggers proactive AI assistance during content creation.
- **UI/UX Refinement:** Improved video preview and added a "🧠 Explain" button to the toolbar.
- **Code-to-Node Improvements:** Enhanced Python code parsing and mapping to visual nodes, including `.animate` chains and variable references.
# 🌿 EfficientManim — The Ultimate Node-Based Manim IDE
1
+
# EfficientManim
2
2
3
-

4
-
5
-
**🌈 Create mathematical animations visually with the power of Python, AI, and Production-Grade Type Safety.**
3
+
EfficientManim is a node-based visual IDE for building mathematical animations. It combines a drag-and-drop scene graph with AI-assisted tooling, a structured history system, and a learning-first explanation engine.
6
4
7
5
---
8
6
9
-
## 🚀 Key Features
10
-
11
-
### 📄 Convert Slides into Animated Math Videos
12
-
- What it does: Upload one or multiple PDFs and the AI turns each slide into animated Manim scenes and a ready-to-edit node graph.
13
-
- Who it's for: Students, teachers, and YouTube educators who need clear animated explanations quickly.
14
-
- Why it's powerful: It converts static slides into structured animations automatically, saving hours of manual scene building.
15
-
- How it works: PDFs are parsed into slide structure, sent to the AI for an animation plan, then converted into Manim code and nodes.
16
-
17
-
### 🎬 Node-Based Visual Workflow
18
-
-**Visual Editor:** Drag-and-drop Mobjects and Animations with intuitive wiring
19
-
-**Infinite Canvas:** Pan and zoom freely to manage large node graphs
20
-
-**Live Preview:** Real-time static previews of individual nodes
21
-
-**Smart Connections:** Automatic wire validation and scene synchronization
22
-
23
-
### 🤖 AI Features
24
-
-**Prompt-to-Manim Code:** Describe animations in plain English and get runnable Manim code
25
-
-**PDF Slide Animation:** Attach PDFs in the AI tab and generate animated scenes automatically
26
-
-**AI Voiceover Studio:** TTS generation with multi-voice support and duration syncing
7
+
## What You Can Do
8
+
- Build Manim scenes visually with nodes, wiring, and live previews.
9
+
- Generate animations from natural-language prompts or PDF slides.
10
+
- Produce AI voiceovers synced to animation timing.
11
+
- Inspect and control everything through MCP commands.
27
12
28
-
### 🎯 Tooltips
13
+
---
29
14
30
-
* Every button, panel, and action now includes a clear tooltip
31
-
* Instantly understand what anything does without searching the documentation
32
-
* Faster navigation, fewer mistakes, and a smoother workflow
33
-
* The interface becomes self-explanatory, even for first-time users
15
+
## 🧠 Explain This Animation
16
+
**What it does**
17
+
- Converts the current animation into a clear, student-friendly explanation.
18
+
- Works for full scenes, selected nodes, or single animations.
34
19
35
-
This makes the app easier to learn, faster to use, and far more intuitive overall.
20
+
**How it helps**
21
+
- Students get intuitive explanations and step-by-step reasoning.
22
+
- Teachers can reuse explanations as lesson scripts.
23
+
- Beginners learn the “why” behind each visual move.
36
24
37
-
### 🎬 Multiple Scenes
38
-
-Manage multiple scenes per project in the **Scenes**tab
39
-
-Create, rename, delete, and switch between scenes — each with its own node graph
40
-
-Scene state auto-saved and restored when switching
25
+
**Explain Panel workflow**
26
+
-Open the panel with the **🧠 Explain**button in the main toolbar.
27
+
-Choose **Simple** or **Detailed** mode.
28
+
-Regenerate or copy the explanation instantly.
41
29
42
-
### 📦 VGroup Utility
43
-
- Select Mobject nodes → click **Create VGroup** in the **VGroups** tab
Teacher Mode generates structured lesson notes from the current scene.
83
61
62
+
**What you get**
63
+
- Concept explanation
64
+
- Visual explanation tied to the animation
65
+
- Step-by-step teaching script
66
+
- Student-friendly notes
67
+
- Key takeaways
84
68
85
-
### 🧭 Advanced MCP + History Control
86
-
-All actions—including node edits, wires, VGroups, scenes, project I/O, rendering, assets, AI workflows, themes, keybindings, and TTS—are now available via `docs/mcp_commands.md` with consistent structured JSON responses.
-Use the new `history.*` MCP commands (`undo_project`, `redo_node`, `restore_checkpoint`, `timeline`, `replay`, etc.) to inspect diffs, summaries, and timeline metadata before issuing state changes.
69
+
**Export options**
70
+
-Markdown (`.md`)
71
+
-Plain text (`.txt`)
72
+
-Copy to clipboard
89
73
90
-
### 📚 Documentation Links
91
-
-`docs/history_system.md` walks through the new history data model, checkpoint APIs, signals, and how to hook future actions into undo/redo.
92
-
-`docs/mcp_commands.md` is the canonical MCP API reference listing every command, payload, metadata, and sample usage for AI agents.
0 commit comments