Introduction
kinetickit is a domain-neutral animation engine. It owns scenes, motions, deterministic frame scheduling, renderer capabilities, interactions, accessibility metadata and file export. Economics packages and other applications translate their own objects into ordinary KineticKit nodes.
One immutable scene and one motion can drive three outputs: animated SVG, streamed GIF and self-contained interactive HTML. The same scene and time always give the same snapshot. Wall-clock time and the choice of renderer do not enter the model.
KineticKit does not import mosaickit, utility-viz or any other domain package. Font processing belongs to glyphkit and reaches the scene through one adapter, described in Typography.
Layers
May know time, values, protocols
Must not know scenes, renderers
May know geometry, styles, object ids
Must not know backend objects
May know scene snapshots, capabilities
Must not know consumer domain models
May know frames, artifacts, destinations
Must not know visualization logic
Import-linter contracts and tests that read the syntax tree enforce these boundaries. Matplotlib, Plotly and Pillow live only in private _* modules.
A short tour
- Quick start moves one point and writes it to three formats.
- Scenes and motion lists the nodes and shows how motions compose.
- Output formats explains capabilities, fallbacks and what each format keeps.
- Examples runs a chart, an adapter and a 3D surface.