← All reportsPublic report

airbnb/lottie-android

Render After Effects animations natively on Android and iOS, Web, and React Native

36k stars Java View on GitHubprofiled 11d ago
Try GitZoid
0PRs this week
0Contributors
0Deps scanned
0Issues found
01 · Repo overview

How lottie-android is put together

This is the airbnb/lottie-android repository, a multi-module Android library that parses Adobe After Effects animations exported as JSON (Bodymovin format) and renders them natively on Android. The primary language of the core 'lottie' module is Java (e.g., AsyncUpdates.java, L.java, Lottie.java), with Kotlin used for the Compose integration module and sample/benchmark/test apps. Data flows from JSON animation sources (assets, raw resources, or fetched over HTTP by NetworkFetcher) through parsers into a composition model, then into an animator/draw pipeline on Android Canvas or Compose Canvas, with optional async setProgress on background threads. Build orchestration is Gradle/Groovy DSL with a version catalog (refreshVersions) and Java 17 toolchains.

Languages

JavaKotlinGroovy

Frameworks

Android SDKJetpack ComposeAndroidXGradleAndroid Gradle Pluginandroidx.baselineprofileKSPDokka

Infrastructure

GitHub Actions CI (Validate workflow badge)Maven Central publishing via com.vanniktech.maven.publishSnapshot deployment script (deploy_snapshot.sh)Baseline Profile generation on managed Pixel 6 emulator

Major components

lottie (core library)

Parses Bodymovin JSON animations and renders them natively via Android Canvas, including parsing, animation model, draw pipeline, network fetching, caching, and delegates for fonts/images.

lottie-compose

Jetpack Compose integration exposing Lottie animations as composable APIs, including its own API compatibility dump.

network subsystem (com.airbnb.lottie.network)

Fetches animation JSON over HTTP via pluggable LottieNetworkFetcher implementations and caches responses on disk under cacheDir/lottie_network_cache via NetworkCache/L.java wiring.

sample-compose

Compose-based demo/showcase application bundling sample animations, fonts, and images to exercise library features.

snapshot-tests

Test module that renders bundled animations (Mobilo letters, LogoSmall, etc.) for pixel-snapshot regression verification.

issue-repro / issue-repro-compose

Minimal View-based and Compose apps used to reproduce user-reported bugs against the library modules.

app-benchmark + baselineprofile

Macrobenchmark harness and managed-device baseline-profile generation targeting the benchmark app with side-loaded baseline profiles.

release/deploy tooling

Shell and Node helper scripts (deploy_snapshot.sh, upload_release.sh, sign.sh, version.sh, post_pr_comment.js) automating signing, publishing, versioning, and PR comments.

02 · Weekly changes

No digest this week

1 weeksWeek of

03 · Security check

Dependencies and code review

0 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 0 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required