Lottie4J Java Library

Project structure

This project consists of different modules to make it easier to maintain and use only the required components when used in an application.


  • Contains objects matching the Lottie data model.

  • Can read and write Lottie files (JSON (almost finished) and ZIP (TODO)).

  • Uses records for the data objects, partially based on the solution provided in this StackOverflow question.


JavaFX component to play Lottie animations (TODO).


Demo application demonstrating the use of FXPlayer.

IDE settings

To run the JavaFX Demo application, the JavaFX runtime is needed. You can install this separately by downloading it from the Gluon website, or use a JDK which has JavaFX included, for instance Azul Zulu.

$ sdk install java 17.0.3.fx-zulu

In your IDE select this SDK as the runtime for your project.


  • There is a Lottie Android project (see awesome-lottie) that is aiming for native Android integration, not recent Java versions and/or JavaFX.

  • Rive is a new standard for interactive graphics. It seems to have the same goals as LottieFiles, but it seems to be based on a subscription model.

Last website build: 01/02/2024 08:04 (UTC)
Visitor counter by Clicky