// the find
djeedai/bevy_tweening
Tweening animation plugin for the Bevy game engine.
A Bevy plugin that tweens any field of any component or asset through a small `Lens` trait, with sequencing via `then()` and completion events or one-shot systems. It suits Bevy developers who want UI, sprite, or gameplay animation without writing their own interpolation systems.
The lens design is the right call: one generic `Lens<T>` covers built-in and custom components and assets, and mutating in place avoids the full-component copy per tick that `bevy_easings` pays. `Tween`, `Sequence` and `Delay` share the `Tweenable` trait, so `then()` chains them without wrapper types, and completion can raise a Bevy event or invoke a one-shot system. Custom types need no extra plugin setup, which keeps the surface area small.
Interpolation is always linear in the lens, with easing applied to the ratio beforehand, so per-field curves or keyframe timelines mean writing your own lens logic. An infinite repeat count silently stalls everything appended after it in a sequence; the README documents this, but it is an easy trap. Parallel tweens rely on hand-picked timings with no grouping primitive. The README also admits limited maintenance resources, and the `main` branch is explicitly unsupported, so you are tied to the release that tracks your Bevy version.