gitwtfhub

wtf is lottie-ios?

airbnb/lottie-ios — explained in plain English

Analysis updated 2026-06-21

26,736SwiftAudience · developerComplexity · 2/5LicenseSetup · easy

TL;DR

Lottie for iOS plays designer-made animations inside iPhone and iPad apps directly from small JSON files exported by Adobe After Effects, no manual recreation by engineers needed.

Mindmap

mindmap
  root((Lottie iOS))
    What it does
      Plays animations
      From JSON files
      No video needed
    Features
      Scrub by frame
      Loop and reverse
      Pixel perfect
    Platforms
      iOS and iPadOS
      macOS
      Apple TV
    Tech Stack
      Swift
      After Effects export
      JSON format

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Add smooth loading spinners, onboarding flows, or success animations to an iOS app using a designer's After Effects export

REASON 2

Let a designer deliver pixel-perfect animations as JSON files that engineers drop straight into an app with no approximation

REASON 3

Build interactive animations that users can scrub through frame-by-frame by dragging a slider on screen

What's in the stack?

SwiftObjective-C

How it stacks up

airbnb/lottie-iosapple/containervapor/vapor
Stars26,73626,36826,053
LanguageSwiftSwiftSwift
Setup difficultyeasyeasymoderate
Complexity2/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 30min

Requires an animation JSON file, get free ones from LottieFiles.com or export from Adobe After Effects using the Bodymovin plugin.

Apache 2.0 License, free to use in any project including commercial apps, with no restrictions other than keeping the license notice.

Wtf does this do

Lottie for iOS is an open-source library created by Airbnb that lets designers' animations run natively inside iPhone and iPad apps, no extra work needed from engineers to recreate them by hand. It bridges the gap between what a designer creates and what actually ships in the app. Here's how it works: a designer creates animations in Adobe After Effects (a professional animation tool) and exports them as a lightweight JSON file (a text-based data format). Lottie takes that JSON file and renders the animation smoothly on the device, playing it, looping it, reversing it, speeding it up, or even allowing users to interact with it by scrubbing through frame by frame. The practical benefit is significant for teams building apps: instead of a back-and-forth where engineers approximate what designers intended, you get pixel-perfect animations from the original design file. Because the animations are stored as data rather than video, they scale perfectly to any screen size and stay tiny in file size even when visually complex. This library is specifically for iOS, macOS, Apple TV, and Apple Vision Pro apps built in Swift (Apple's programming language). Airbnb also maintains equivalent versions for Android and the web, making Lottie a cross-platform standard for app animations across the industry. Many of the loading spinners, success checkmarks, and delightful micro-animations you see in popular apps are powered by Lottie behind the scenes.

Yoink these prompts

Prompt 1
Show me how to add a Lottie animation JSON file to a SwiftUI view in Xcode and loop it automatically
Prompt 2
How do I trigger a Lottie animation in my iOS app when a button is tapped and stop it when it completes?
Prompt 3
How do I allow users to scrub through a Lottie animation by dragging a slider, controlling the playback frame?
Prompt 4
How do I add Lottie to my iOS project using Swift Package Manager and display a LottieFiles animation?
Prompt 5
How do I change the color of elements inside a Lottie animation at runtime using value providers in Swift?

Frequently asked questions

wtf is lottie-ios?

Lottie for iOS plays designer-made animations inside iPhone and iPad apps directly from small JSON files exported by Adobe After Effects, no manual recreation by engineers needed.

What language is lottie-ios written in?

Mainly Swift. The stack also includes Swift, Objective-C.

What license does lottie-ios use?

Apache 2.0 License, free to use in any project including commercial apps, with no restrictions other than keeping the license notice.

How hard is lottie-ios to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is lottie-ios for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.