A simple app that consumes The Ricky & Morty API to display the tv show characters, was trying to learn about pagination with the paging 3 library

Overview

Ricky&MortyAPIDemo

A simple app that consumes The Rick and Morty API which is a REST and GraphQL API based on the television show Rick and Morty. I was trying to learn about pagination with the paging 3 library, built with clean architecture principles and jetpack libraries.

Min Api Level : 16

Setup Requirements

  • Android device or emulator
  • Android Studio

Getting Started

In order to get the app running yourself, you need to:

  1. clone this project
  2. Import the project into Android Studio
  3. Connect the android device with USB or just use your emulator
  4. In Android Studio, click on the "Run" button.

Libraries

Libraries used in the whole application are:

  • Kotlin - Kotlin is a programming language that can run on JVM. Google has announced Kotlin as one of its officially supported programming languages in Android Studio; and the Android community is migrating at a pace from Java to Kotlin
  • Viewmodel -The ViewModel class is designed to store and manage UI-related data in a lifecycle conscious way
  • LiveData - A lifecycle-aware data holder with the observer pattern
  • Kotlin Coroutines - A concurrency design pattern that you can use on Android to simplify code that executes asynchronously
  • Paging 3 library - The Paging library helps you load and display pages of data from a larger dataset from local storage or over network. This approach allows your app to use both network bandwidth and system resources more efficiently.
  • Retofit - Retrofit is a REST Client for Java and Android by Square inc under Apache 2.0 license. Its a simple network library that used for network transactions. By using this library we can seamlessly capture JSON response from web service/web API.
  • Hilt - A dependency injection library for Android that reduces the boilerplate of doing manual dependency injection in your project
  • Navigation Components - Helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer.
  • Logging Interceptor - ogs HTTP request and response data.
  • Material Libarary - Modular and customizable Material Design UI components for Android

Demo

Support

  • Found this project useful ❤️ ? Support by clicking the ⭐️ button on the upper right of this page. ✌️
  • Notice anything else missing? File an issue
  • Feel free to contribute in any way to the project from typos in docs to code review are all welcome.
You might also like...
Circular motion is a ViewPager library that can be used to make Awesome Onboarding designs.

CircularMotion Android Circular Motion Onboarding library Circular motion is a ViewPager library that can be used to make Awesome Onboarding designs.

Android LiquidSwipe Library
Android LiquidSwipe Library

Android LiquidSwipe Library

Android Concentric Onboarding library
Android Concentric Onboarding library

Android Concentric Onboarding library

A beautiful way to introduce users to your app
A beautiful way to introduce users to your app

Onboarding A beautiful way to introduce users to you app Using a regular ViewPager with a custom transformer with callbacks we can achieve this effect

Android App of Pager

Pager Pager allows you to communicate with people without any infrastructure based services like cellular network or Wifi. We make this possible by tr

Simple android application that consumes Rick and Morty API to display characters,episodes,Location
Simple android application that consumes Rick and Morty API to display characters,episodes,Location

Rick and Morty Compose An android app built using Kotlin that consumes Rick and

Ricky and Morty episode guide using KMM and Apollo GraphQL Native

Ricky And Morty Episodes - Kmm Ricky and Morty episode guide using KMM and Apollo GraphQL Native This is a simple guide on how to create an KMM projec

Github-Api-Pagination-Example - Pagination 3 Example using Github Api

Github-Api-Pagination Pagination 3 Example using Github Api Tech Stack 100% Kotl

A simple app that consumes The GitHub APIs to display github users. The aim was to learn about different jetpack libraries, built with MVVM pattern.
A simple app that consumes The GitHub APIs to display github users. The aim was to learn about different jetpack libraries, built with MVVM pattern.

A simple app that consumes The GitHub APIs to display github users. The aim was to learn about different jetpack libraries, built with MVVM pattern.

Handy library to integrate pagination, which allow no data layout, refresh layout, recycler view in one view and easy way to bind pagination in app.
Handy library to integrate pagination, which allow no data layout, refresh layout, recycler view in one view and easy way to bind pagination in app.

Pagination View Handy library to integrate pagination, which allow no data layout, refresh layout, recycler view in one view and easy way to bind pagi

Rick-and-morty - Rick and Morty app using Jetpack Compose
Rick-and-morty - Rick and Morty app using Jetpack Compose

Rick and Morty Rick and Morty app using rickandmortyapi.com Current Screens: Cha

Sample app for tutorial: Pagination in Android Room Database using the Paging 3 Library

Demo Implementation of Paging 3 with Room DB Read the article. Demo implementation of Pagination in an Android Room Database using the Paging 3 Librar

RickAndMortyApp - Rick and morty, app about characters information
RickAndMortyApp - Rick and morty, app about characters information

Rick And Morty App 🇧🇷 Aplicativo com tema do Rick and Morty, interatividade co

Simple android application that consumes RAWG API to display a list of games
Simple android application that consumes RAWG API to display a list of games

Gamex Compose -Work in Progress- An android application that consumes RAWG API to display a list of popular video games built using Jetpack Compose an

An android app built using Kotlin that consumes TMDB API to display current trending, upcoming and popular movies 🍿 .
An android app built using Kotlin that consumes TMDB API to display current trending, upcoming and popular movies 🍿 .

Flick An android app built using Kotlin that consumes TMDB API to display current trending, upcoming and popular movies 🍿 .It has been built followin

An android app built using Kotlin that consumes Pixabay API to display images and their details.
An android app built using Kotlin that consumes Pixabay API to display images and their details.

AdanianAndroidTest An android app built using Kotlin that consumes Pixabay API to display images and their details. It has been built following Clean

An Android app built with Kotlin, consuming StarWars API to display characters of the popular StarWars Movie. It is built with the MVVM pattern and the latest Jetpack components.
An Android app built with Kotlin, consuming StarWars API to display characters of the popular StarWars Movie. It is built with the MVVM pattern and the latest Jetpack components.

StarWars An Android app built with Kotlin, consuming StarWars API to display characters of the popular StarWars Movie. It is built with the MVVM patte

Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube channel.
Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube channel.

Marvel Super Heroes Android App 📱 Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube c

Marvel - A simple application to display information about the characters of the Marvel universe
Marvel - A simple application to display information about the characters of the Marvel universe

Marvel Characters 'Marvel characters' is a simple application to display informa

Owner
Joel Kanyi
DSC Lead @KibabiiUni | Android Dev | ML enthusiast
Joel Kanyi
Paging indicator widgets compatible with the ViewPager from the Android Support Library and ActionBarSherlock.

Android ViewPagerIndicator Paging indicator widgets that are compatible with the ViewPager from the Android Support Library to improve discoverability

Jake Wharton 10.2k Jan 5, 2023
A simple keyframe-based animation framework for UIKit. Perfect for scrolling app intros.

Jazz Hands is a simple keyframe-based animation framework for UIKit. Animations can be controlled via gestures, scroll views, KVO, or ReactiveCocoa. J

IFTTT 6.4k Dec 30, 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

黄伟平 2.7k Dec 30, 2022
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

Ian Thomas 2.5k Dec 31, 2022
ViewPagers library for Android

freepager Ready-to-use view pagers for your project. Based on Swipes navigation demo repository Usage: Gradle: dependencies { compile 'pro.alexza

Alex Zaitsev 460 Nov 25, 2022
A Material Design ViewPager easy to use library

MaterialViewPager Material Design ViewPager easy to use library Sample And have a look on a sample Youtube Video : Youtube Link Download In your modul

Florent CHAMPIGNY 8.2k Dec 29, 2022
Android library for fluid tablayout animation as seen on Snapchat.

SnapTabLayout Show some ❤️ and star the repo to support the project This library is the implementation of TabLayout as seen on popular messaging app S

Niranjan Kurambhatti 714 Dec 25, 2022
Pixplicity 915 Nov 8, 2022
Library for Sliding Tab With Color Icons!

Sliding Tab With Color Icons Sliding Tab With Color Icons! Kindly use the following links to use this library: In build.gradle (Project) allprojects {

Prabhakar Thota 35 Jan 22, 2022
LiquidSwipe is a ViewPager library that can be used to make Awesome Onboarding designs.

LiquidSwipe LiquidSwipe is a ViewPager library that can be used to make Awesome Onboarding designs. Usage Set up the dependency Add the mavenCentral()

Farham Hosseini 4 Nov 5, 2021