A look at airbnb/lottie-ios: 26.9k stars on GitHub, written primarily in Swift, tracked under the Mobile category. An iOS library to natively render After Effects vector animations
Snapshot summary built from the project's own GitHub metadata — there's no written TopGit review yet. The page will update automatically when a full review is published.
WHY NO REVIEW YET
TopGit writes full reviews for the most-starred, most-requested repositories. This page is a snapshot until then — see the READ ME tab for the original README in full.
View documentation, FAQ, help, examples, and more at airbnb.io/lottie
Lottie is a cross-platform library for iOS, macOS, tvOS, visionOS, Android, and Web that natively renders vector-based animations and art in realtime with minimal code.
Lottie loads and renders animations and vectors exported in the bodymovin JSON format. Bodymovin JSON can be created and exported from After Effects with bodymovin, Sketch with Lottie Sketch Export, and from Haiku.
Designers can create and ship beautiful animations without an engineer painstakingly recreating them by hand.
Since the animations are backed by JSON, they are extremely small in size but can be large in complexity!
Animations can be played, resized, looped, sped up, slowed down, reversed, and even interactively scrubbed.
Lottie can play or loop just a portion of the animation as well, the possibilities are endless!
Animations can even be changed at runtime in various ways! Change the color, position, or any keyframable value!
Here is just a small sampling of the power of Lottie
Installing Lottie
Lottie supports Swift Package Manager, CocoaPods, and Carthage (Both dynamic and static).
Github Repo
You can pull the Lottie Github Repo and include the Lottie.xcodeproj to build a dynamic or static library.
Swift Package Manager
To install Lottie using Swift Package Manager you can follow the tutorial published by Apple using the URL for the Lottie repo with the current version:
In Xcode, select “File” → “Add Packages...”
Enter https://github.com/airbnb/lottie-spm.git
or you can add the following dependency to your Package.swift:
When using Swift Package Manager we recommend using the lottie-spm repo instead of the main lottie-ios repo. The main git repository for lottie-ios is somewhat large (300+ MB), and Swift Package Manager always downloads the full repository with all git history. The lottie-spm repo is much smaller (less than 500kb), so can be downloaded much more quickly.
Instead of downloading the full git history of Lottie and building it from source, the lottie-spm repo just contains a pointer to the precompiled XCFramework included in the latest lottie-ios release (typically ~8MB). If you prefer to include Lottie source directly your project, you can directly depend on the main lottie-ios repo by referencing https://github.com/airbnb/lottie-ios.git instead.
CocoaPods
Add the pod to your Podfile:
pod 'lottie-ios'
And then run:
pod install
After installing the cocoapod into your project import Lottie with
import Lottie
Carthage
Add Lottie to your Cartfile:
github "airbnb/lottie-ios" "master"
And then run:
carthage update
In your application targets “General” tab under the “Linked Frameworks and Libraries” section, drag and drop lottie-ios.framework from the Carthage/Build/iOS directory that carthage update produced.
Swift Version Support
Lottie supports Swift / Xcode versions back to the minimum version that is permitted by Apple for submissions to the App Store. You can see the most up-to-date information for which Swift versions Lottie supports on Swift Package Index:
Privacy
Lottie does not collect any data. We provide this notice to help you fill out App Privacy Details. We additionally provide a privacy manifest which can be included in your app.
Security
We distribute XCFramework bundles for each release on GitHub. In Lottie 4.4.0 and later, these XCFramework bundles include a code signature. These bundles are self-signed under the name "Lottie iOS" and have the following fingerprint:
In Xcode you can verify this by selecting Lottie.xcframework and confirming that it shows the following information:
Contributing
We always appreciate contributions from the community. To make changes to the project, you can clone the repo and open Lottie.xcworkspace. This workspace includes:
the Lottie framework (for iOS, macOS, and tvOS)
unit tests and snapshot tests (for iOS, must be run on an iPhone 8 simulator)
an Example iOS app that lets you browse and test over 100 sample animations included in the repo
All pull requests with new features or bug fixes that affect how animations render should include snapshot test cases that validate the included changes.
To add a new sample animation to the snapshot testing suite, you can add the .json file to Tests/Samples. Re-run the snapshot tests to generate the new snapshot image files.
To update existing snapshots after making changes, you can set isRecording = true in SnapshotTests.swiftsetUp() method and then re-run the snapshot tests.
The project also includes several helpful commands defined in our Rakefile. To use these, you need to install Bundler:
$ sudo gem install bundle
$ bundle install
For example, all Swift code should be formatted according to the Airbnb Swift Style Guide. After making changes, you can reformat the code automatically using SwiftFormat and SwiftLint by running bundle exec rake format:swift. Other helpful commands include:
$ bundle exec rake build:all # builds all targets for all platforms
$ bundle exec rake build:package:iOS # builds the Lottie package for iOS
$ bundle exec rake test:package # tests the Lottie package
$ bundle exec rake format:swift # reformat Swift code based on the Airbnb Swift Style Guide
How does airbnb/lottie-ios compare to other Mobile projects?
airbnb/lottie-ios is tracked by TopGit in the Mobile category, with 26.9k GitHub stars and written in Swift. Browse the Mobile topic page on TopGit to compare it against similar projects by stars and activity.
How many stars does airbnb/lottie-ios have?
airbnb/lottie-ios has 26.9k GitHub stars — refresh the page for the live number, or check github.com/airbnb/lottie-ios. TopGit mirrors GitHub's count but does not claim minute-by-minute accuracy.
Is airbnb/lottie-ios open source?
Yes — airbnb/lottie-ios ships under the Apache-2.0 license, which makes its source code freely readable (and, depending on license terms, forkable and reusable). Source: github.com/airbnb/lottie-ios.
What else is in the Mobile space?
airbnb/lottie-ios is tracked by TopGit under the Mobile category, alongside 9 GitHub-tagged topics. Trending and Topics pages list peer repositories of comparable stars and language.
What is airbnb/lottie-ios?
airbnb/lottie-ios (airbnb/lottie-ios) is a Swift project on GitHub. From the project's own README: An iOS library to natively render After Effects vector animations
Where can I see airbnb/lottie-ios in action?
The project maintains a homepage at https://lottie.airbnb.tech. The README tab on this page also usually contains screenshots and a quickstart.
Where do I read more about airbnb/lottie-ios?
This TopGit page is a snapshot — the READ ME tab shows the project's own README content (links stripped, images preserved). The GitHub repository at github.com/airbnb/lottie-ios is the definitive source.
Read full README in the tab above.
Is lottie-ios worth your time?
ChatGPT, Claude and Perplexity can all read this page. Ask one of them what it makes of lottie-ios.