A pure SwiftUI implementation of all easing curves from easings.net, baked right into SwiftUI's Animation API and Core Animation.
With EasingKit, you can bring natural, delightful, and expressive motion to your appsβno boilerplate, no guesswork.
- All easing curves from easings.net reimplemented in pure Swift
- Drop-in support for SwiftUI Animations (
withAnimation,.animation(), etc.) - Compatible with Core Animation for UIKit/AppKit integrations
- Lightweight, dependency-free, and easy to use
- Documentation: EasingKit Docs
- Tutorials: EasingKit Tutorials
Add EasingKit to your project by selecting
File > Add Packages⦠in Xcode and entering:
https://github.com/nozhana/EasingKit
import SwiftUI
import EasingKit
struct ContentView: View {
@State private var scale: CGFloat = 1.0
var body: some View {
Circle()
.fill(Color.blue)
.frame(width: 100, height: 100)
.scaleEffect(scale)
.onTapGesture {
withAnimation(.easeOutBack(duration: 0.6)) {
scale = scale == 1.0 ? 1.5 : 1.0
}
}
}
}All easing functions are faithfully ported from the classic easings.net library, giving you a complete set of motion tools for beautiful, expressive design.
Contributions, issues, and feature requests are welcome!
Feel free to open a PR or an issue in the GitHub repo.
EasingKit is available under the MIT license.