Developers
pundit is a Rust workspace under crates/, with a Slint user interface and
GStreamer doing the video work. The design of the Linux app is written up in the
Linux port design spec,
and the conventions every change is held to — the zero-copy decode path, the
capture clock, the export graph, the crate dependency rules — are in
CLAUDE.md.
The crates
crates/pundit-core— pure logic: the project format, the playback timeline, zoom, and stroke replay. It declares no media dependency at all, and CI runs its tests on a machine with no GStreamer installed.crates/pundit-media— everything GStreamer: the source player, capture, the export frame driver and the overlay rasterizer.crates/pundit-app— the Slint user interface, the command bus and the event layer.crates/pundit-harness— headless integration tests driven over the command bus.
API documentation
The rustdoc for each crate, built with private items included:
Building and design history
- Build from source
— the packages to install, and how to run the tests and build the
.deb. docs/superpowers/— the specs, plans and measurement spikes behind every phase of the port, in date order.