Skip to content

Swift Package Manager support for Lottie, an iOS library to natively render After Effects vector animations

License

Notifications You must be signed in to change notification settings

airbnb/lottie-spm

Lottie for Swift Package Manager

SwiftPM License Swift Versions

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:

  1. In Xcode, select “File” → “Add Packages...”
  2. 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:

Swift Versions

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.

About

Swift Package Manager support for Lottie, an iOS library to natively render After Effects vector animations

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks