A powerful iOS animation engine with easing functions, interpolation, and spring physics for building advanced custom animations.
INTUAnimationEngine is an iOS library that enables developers to build advanced custom animations with precise control over timing, easing, and physics. It solves the limitation of Core Animation by allowing animation of any property—including non-animatable ones—and provides a spring solver for realistic motion. The library offers a UIView-like block-based API but executes the animation block each frame for interactive or automated animations.
iOS developers who need fine-grained control over animations beyond what Core Animation offers, such as animating custom properties, implementing complex easing curves, or adding spring physics to UI elements.
Developers choose INTUAnimationEngine for its ability to animate any property type, its extensive easing and interpolation libraries, and its standalone spring physics solver. It provides a familiar API while offering the flexibility to create interactive, physics-based animations that Core Animation cannot handle.
Easily build advanced custom animations on iOS.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Animates any value type, including non-Core Animation properties like CGRect and UIColor, using its interpolation library, as shown in the README's examples for discrete and linear interpolation.
Includes a full set of standard easing functions (e.g., easeIn, easeOut) for precise timing control, referenced with a cheat sheet link for visualizations.
Offers a spring animation API with tunable damping, stiffness, and mass parameters, powered by a standalone C library for realistic motion simulation.
Provides callbacks on every animation frame via CADisplayLink, enabling interactive animations driven by user input, as highlighted in the description.
The README explicitly states that linear interpolation for CGAffineTransform and CATransform3D is not supported, requiring manual decomposition into components, which adds complexity.
The library is written in Objective-C, with code snippets and APIs in Obj-C, making it less seamless for Swift-only projects compared to native Swift alternatives.
Requires developers to handle state updates manually in each frame callback, leading to more boilerplate code than higher-level animation abstractions.