Skip to content

Animato v0.5.0 — Physics

Choose a tag to compare

@github-actions github-actions released this 08 May 08:04
· 31 commits to main since this release
b336fc1

Animato v0.5.0 — Physics

The fifth release of the Animato animation library for Rust, adding input-driven physics: inertia, drag tracking, gesture recognition, pinch, and rotation.

Crates published to crates.io

Crate Version Description
animato-core 0.5.0 Traits + 33 easing variants, no_std
animato-tween 0.5.0 Tween<T>, Loop, builder pattern, no_std, KeyframeTrack, serde
animato-spring 0.5.0 Spring, SpringN<T>, 5 presets, no_std
animato-path 0.5.0 Bezier curves, CatmullRom splines, motion paths, SVG parser
animato-physics 0.5.0 Inertia, DragState, GestureRecognizer, pinch, rotation
animato-driver 0.5.0 AnimationDriver, Clock variants
animato-timeline 0.5.0 Timeline, Sequence, stagger, time scale, callbacks, async wait
animato 0.5.0 Facade — re-exports all of the above

Quick Start

[dependencies]
animato = { version = "0.5.0", features = ["physics"] }
use animato::{Inertia, InertiaConfig, Update};

let mut inertia = Inertia::new(InertiaConfig::smooth());
inertia.kick(800.0);

while inertia.update(1.0 / 60.0) {}
let final_position = inertia.position();

What's New in v0.5.0

  • ✅ New animato-physics crate
  • ✅ Inertia and InertiaN<T> with friction deceleration and clamp-and-stop bounds
  • ✅ DragState with pointer capture, axis locks, constraints, grid snap, and velocity EMA
  • ✅ GestureRecognizer for tap, double tap, long press, swipe, pinch, and rotation
  • ✅ physics facade feature, drag example, tests, and benchmarks

What's Included

  • ✅ no_std support for animato-core, animato-tween, animato-spring, fixed path curves in animato-path, and 1D inertia/gestures in animato-physics
  • ✅ Criterion benchmarks for easing, tween, spring, timeline, paths, and physics
  • ✅ CI: stable + beta + nightly toolchains

See CHANGELOG.md and ROADMAP.md for details.