A Lottie animations marketplace powered by LottieFiles

Overview

Lottie World

A Lottie animations playground app to mess around with animations and clean architecture with MVVM.

Tests

Built with ❤︎ by Wajahat Karim

Video

https://github.com/wajahatkarim3/LottieWorld/blob/main/art/LottieWorld.mp4




Features

  • Loads the Featured, Recent, and Popular animations
  • Allows users to add animations in Favorites
  • Loads Featured Animators.
  • Shows a list of news from the Blogs
  • Allows users to Play/Pause/Control animation in details screen
  • Allows users to scan QR code of animations and play in the app
  • Allows users to share the URL of animation
  • Comes in both light and dark mode.
  • Creates a fake user logged in logout state for demo purposes.

📱 Download Demo on Android

Download the APK file from here on your Android phone and enjoy the Demo App :)

Architecture

  • Built with Modern Android Development practices (MVVM)
  • Utilized Repository and Usecase patterns for data
  • Includes unit tests for Repository, ViewModels, Usecases, API Service response.
  • Include unit test for the DAO and Room database.

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..
  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
    • Navigation Components - For Navigation between screens with Fragments
  • Dependency Injection
    • Hilt - Easier way to incorporate Dagger DI into Android apps. This is in the main branch.
  • Retrofit - A type-safe HTTP client for Android and Java.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.
  • Gradle Kotlin DSL - For writing Gradle build scripts using Kotlin.
  • MockK - For Mocking and Unit Testing
  • Lottie - For Lottie Animations
  • Zxing Barcode Scanner - For QR Code scanning
  • Coil - For Image loading

👨 Developed By

Wajahat Karim

Twitter Web Medium Linkedin

You might also like...
An Android library which provides simple Item animations to RecyclerView items
An Android library which provides simple Item animations to RecyclerView items

RecyclerViewItemAnimators Library Travis master: This repo provides: Appearance animations Simple animators for the item views Quick start You can now

Library containing common animations needed for transforming ViewPager scrolling for Android v13+.
Library containing common animations needed for transforming ViewPager scrolling for Android v13+.

ViewPagerTransforms Library containing common animations needed for transforming ViewPager scrolling on Android v13+. This library is a rewrite of the

The lib can make the ActivityOptions animations use in Android api3.1+
The lib can make the ActivityOptions animations use in Android api3.1+

ActivityOptionsICS 本项目停止维护 =========== f you are thinking on customizing the animation of Activity transition then probably you would look for Activit

Android library to create complex multi-state animations.
Android library to create complex multi-state animations.

MultiStateAnimation Android library to create complex multi-state animations. Overview A class that allows for complex multi-state animations using An

Automatically manipulates the duration of animations dependent on view count. Quicksand .. the more you struggle.
Automatically manipulates the duration of animations dependent on view count. Quicksand .. the more you struggle.

QuickSand When showing a really enchanting explanatory animation to your users, but you know that after a while it'll get tedious and would stop users

Animations driven by finger movement
Animations driven by finger movement

OffsetAnimator OffsetAnimator lets animate objects basing on touchevents, so users can be engaged in an animation process. Usage Add the library to yo

Circle based animations for Android (min. API 11)
Circle based animations for Android (min. API 11)

CircularTools Circle based animations for Android (min. API 11) Currently implemented: Circular reveal Circular transform Radial reaction Reveal:YouTu

Lightweight Android library for cool activity transition animations

Bungee min SDK 16 (Android Jellybean 4.1) written in Java A lightweight, easy-to-use Android library that provides awesome activity transition animati

Repository for android animations Rx wrapper

RxAnimations RxAnimations is a library with the main goal to make android animations more solid and cohesive. Download compile 'oxim.digital:rxanim:

Owner
Wajahat Karim
🧑🏽‍💻 Lead Android @AirliftTech 🔥 Google Dev Expert (GDE). 📱 Android Developer . 💻 Open Source . 📕 Books x2 Author 📝 Blogger 🎤 Public Speaker
Wajahat Karim
Android Library to create Lottie animation view dialog easily with a lot of customization

Android Library to create Lottie animation view dialog easily with a lot of customization

Amr Hesham 39 Oct 7, 2022
Animated-splash-screen - Animate your Splash Screen using Lottie files.

Animated Splash Screen This small project shows how you can add animation into your android projects or create beautiful looking Splash Screen or Laun

Aashish Ace 0 Jan 2, 2022
RX-based async paradigm, Room, DI (Hilt), Retrofit, MVVM, Jetpack, Lottie, Transitions

CatBreedsApp RxJava, Room, DI (Hilt), Jetpack, Shared element transition. clean MVVM architecture, Retrofit Cats need your help, we want to build an a

Cristian Dumitrache 3 Oct 14, 2022
Actions for android animations. Inspired by libgdx scene2d actions.

Android Animations Actions Actions for android animations. Inspired by libgdx scene2d actions. The main goal of this project is making creating of com

dtx12 137 Nov 29, 2022
[] An Android library which allows developers to easily add animations to ListView items

DEPRECATED ListViewAnimations is deprecated in favor of new RecyclerView solutions. No new development will be taking place, but the existing versions

Niek Haarman 5.6k Dec 30, 2022
FragmentTransactionExtended is a library which provide us a set of custom animations between fragments.

FragmentTransactionExtended FragmentTransactionExtended is a library which provide us a set of custom animations between fragments. FragmentTransactio

Antonio Corrales 1.1k Dec 29, 2022
Combine ViewPager and Animations to provide a simple way to create applications' guide pages.

WoWoViewPager WoWoViewPager combines ViewPager and Animations to provide a simple way to create applications' guide pages. When users are dragging WoW

Nightonke 2.7k Dec 30, 2022
Render After Effects animations natively on Android and iOS, Web, and React Native

Lottie for Android, iOS, React Native, Web, and Windows Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations expo

Airbnb 33.5k Jan 4, 2023
🌠 Transform into a different view or activity using morphing animations.

TransformationLayout ?? Transform into a different view or activity using morphing animations. Using Transformation motions of new material version. D

Jaewoong Eum 2k Jan 3, 2023
Android Transition animations explanation with examples.

UNMAINTAINED No maintainance is intended. The content is still valid as a reference but it won't contain the latest new stuff Android Transition Frame

Luis G. Valle 13.6k Dec 28, 2022