Skip to content

Engine capabilities

This page is the public maturity snapshot for the engine revision dated 2026-08-09. A method existing in source is not, by itself, proof that it is a production authoring contract.

These are the preferred tools for real projects:

  • Automatic root-tape layout and lazy reveal
  • Plain and rich-run text
  • LaTeX math
  • CSS-like width, height, alignment, wrapping, and margins
  • Flex rows and columns with independently addressable items
  • DataPath for sampled paths, trajectories, contours, routes, and vectors
  • DataPlot for named sampled series and markers
  • Diagram for explicit semantic node-edge structures
  • StateTransition for synchronized allowlisted property changes
  • ElementMorph for recompiled content or geometry
  • Isolate and overlay camera focus
  • Additional camera-facing tapes with automatic curtain switching
  • Explicit validated tape selection and local movement with scroll_tape()
  • Portrait 9:16 and landscape 16:9 settings
  • Strict project/DSL checking before render

These capabilities still require an actual preview. Structural validation does not prove legibility, pacing, camera quality, or subject accuracy.

These are implemented but need closer visual testing:

  • Equation-backed mathematical surfaces
  • Tape-local cube/sphere and multipart solids
  • Solid lift, rotation paths, labels, and camera inspection
  • Full-tape PNG/PDF export
  • Complete desktop project archive import/export
  • Reel cutting
  • Legacy grid-board and quadratic helpers

The legacy grid/quadratic methods remain for compatibility. New projects should prefer generic visuals and project-local helpers.

These are exercised by the orbital flagship and engine tests:

  • Additional camera-facing tapes
  • Automatic world → tape, tape → tape, and tape → world curtain switching
  • Explicit scroll_tape() / serialized TapeScroll
  • Stable-ID registered world objects through add_object()
  • Stable-ID world morphs
  • add_camera_inspect() paths

Only one tape—or the free world—is visible at a time. Simultaneously visible tapes and arbitrary physical tape transforms are not current contracts.

Use these only when a project genuinely needs them and can provide render evidence:

  • Low-level free world objects through add_world_object()
  • General camera keyframes and observe_object()
  • Relative world placement

The structures and some tests exist, but the world-camera model and authoring ergonomics are not yet a flagship-safe default.

  • Arbitrary physical transforms for tapes
  • Simultaneously visible tape contexts
  • Generic timed traversal or cursor animation over DataPath / DataPlot
  • Shared reactive clocks and declarative data bindings
  • Timed audio/media tracks in the canvas timeline
  • Automatic subject-specific simulation or graph layout
  • Production builders for every nominal Manim primitive accepted by historical DSL loading

Keep these as explicit limitations. Do not imitate them with lesson-specific branches in the engine and then advertise the workaround as a general feature.

Orbital Mechanics, Feedback Control, SN2 Reaction, and DNA to Protein expose repeated manual 3D positioning and movement work. They are evidence used to test possible cross-subject abstractions, not templates that Matemium’s engine will be adapted to.

Persistent relative movement, sampled pose traversal, live anchor bindings, surface-relative movement, and geodesics are under discussion. No listed approach or illustrative API has been accepted or rejected, and none is a launch capability. See the open discussion and evaluation criteria.

The current desktop can:

  • Inspect saved source and list every populated tape in a scene
  • Export one complete tape as natural-aspect PNG or PDF at native or fixed detail
  • Archive an entire editable project workspace as .matemium.zip
  • Validate an imported archive, assign a new project identity, and open it locally
  • Browse imported images, video, audio, and generated output history

Use precise language:

Level What it establishes
Declared A method, class, or document exists
Importable The scene source imports and instantiates
Structurally valid The compiled DSL passes checks
Renderable A real render completes
Visually accepted The output was watched and inspected
Domain reviewed Facts, equations, data, and causal claims were checked
Production ready Relevant tests, packaging, documentation, and final media are accepted

Never promote a capability based only on a lower evidence level.