Semantic engineering visualization framework on Manim. Models engineering meaning first; renderers and animations project that meaning for teaching.
Not: EDA, SPICE, motion graphics. Is: explainability, signal flow, timing, reusable educational primitives.
| Audience | Start here |
|---|---|
| Contributors / AI agents | AGENTS.md |
| Implementation phases (long tasks) | docs/ROADMAP.md |
| Human reference | docs/README.md |
| Enforced constraints | .cursor/rules/ |
Precedence: .cursor/rules/ overrides docs/ on conflict.
semantic → component → rendering → animation
Extended paths: layout/, protocol/, waveform/ (see docs/architecture.md).
Phases 0–8 are complete. Layout-track stabilization is complete on main. Scope B RC slice is implemented: 01_rc_charge uses continuous waveform + teaching beats. Next work: Scope C (RLC damping, CMOS beats) or IEC / I2C — see ROADMAP Feature backlog.
Install the package, then run smoke scripts from the repo root.
pip install -e .
python examples/basics/graph_only.py
python examples/protocol/spi_byte_transfer.pyManim previews need the optional extra:
pip install -e ".[manim]"
manim -pql examples/basics/signal_flow_demo.py SignalFlowDemo
manim --disable_caching -pql examples/analog/01_rc_charge.py RCChargeSceneFull catalog, per-directory tables, and all run commands: examples/README.md.
- All components inherit
CircuitElement - Rendering:
renderer.render(component)— no renderer on constructors - Animation:
SignalFlow(signal)— no animation on components - One concept per scene moment; tests + minimal example per feature
TBD.