atagen

monolith

public
Star0
Watch0
b563d2da1c80c99c30a88deecf70fa7ba5c00d79
1
ssh://brewery@pls.lobotomise.me:33/atagen/monolith.git

Blame: crates/planner/src/lib.rs

b563d2da1c80atagen2026-10-16 08:25 UTC1
//! Multiphase layout animation planning.
b563d2da1c80atagen2026-10-16 08:25 UTC2
//!
b563d2da1c80atagen2026-10-16 08:25 UTC3
//! Given where tiled windows are and where they should be, produce a short
b563d2da1c80atagen2026-10-16 08:25 UTC4
//! sequence of keyframe layouts. Every window moves between consecutive
b563d2da1c80atagen2026-10-16 08:25 UTC5
//! keyframes on one shared curve, so a plan is correct if every pair of
b563d2da1c80atagen2026-10-16 08:25 UTC6
//! windows shares a separating relation across every phase.
b563d2da1c80atagen2026-10-16 08:25 UTC7
//!
b563d2da1c80atagen2026-10-16 08:25 UTC8
//! See `design/planner.html` for the reasoning and interactive demos.
57f44a63d99fatagen2026-10-16 05:34 UTC9
b563d2da1c80atagen2026-10-16 08:25 UTC10
mod blocks;
b563d2da1c80atagen2026-10-16 08:25 UTC11
mod geom;
b563d2da1c80atagen2026-10-16 08:25 UTC12
mod plan;
b563d2da1c80atagen2026-10-16 08:25 UTC13
mod relation;
b563d2da1c80atagen2026-10-16 08:25 UTC14
mod sat;
b563d2da1c80atagen2026-10-16 08:25 UTC15
mod strategy;
b563d2da1c80atagen2026-10-16 08:25 UTC16
mod validate;
b563d2da1c80atagen2026-10-16 08:25 UTC17
b563d2da1c80atagen2026-10-16 08:25 UTC18
#[cfg(test)]
b563d2da1c80atagen2026-10-16 08:25 UTC19
mod tests;
b563d2da1c80atagen2026-10-16 08:25 UTC20
b563d2da1c80atagen2026-10-16 08:25 UTC21
pub use blocks::plan_blocks;
b563d2da1c80atagen2026-10-16 08:25 UTC22
pub use geom::Rect;
b563d2da1c80atagen2026-10-16 08:25 UTC23
pub use plan::{Config, Group, Plan, Strategy, Style, plan};
b563d2da1c80atagen2026-10-16 08:25 UTC24
pub use validate::{Violation, validate};