Awesome
Lottie for Swift Package Manager
This repo provides Swift Package Manager support for lottie-ios.
Installing Lottie
To install Lottie using Swift Package Manager you can follow the tutorial published by Apple using the URL for this 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
:
.package(url: "https://github.com/airbnb/lottie-spm.git", from: "4.5.0")
Why is there a separate repo for Swift Package Manager support?
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. This 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, this 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 lottie-ios
repo instead.
Other Package Managers
Lottie is also available via Cocoapods, Carthage, and npm. You can also build Lottie directly from source, or manually integrate precompiled XCFrameworks into your project. More information is available in the main lottie-ios repo.
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.
When generating a privacy report, Xcode will automatically detect and use the privacy manifest included in the downloaded Lottie.xcframework
. For convenience we also provide a copy of the privacy manifest in this repo.
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:
89 2F 1B 43 04 7B 50 53 8F 2F 46 EA D9 29 00 DD 3D 48 11 F358 21 78 C0 61 A5 FB 20 F1 11 CB 26
When using lottie-spm, the downloaded Lottie.xframework
isn't visible in the project navigator. To validate the authenticity of a lottie-spm package, you can confirm that the Package.swift
file references a binary XCFramework from https://github.com/airbnb/lottie-ios/releases.