Coder Social home page Coder Social logo

robert-nganga / rickandmorty Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 6.67 MB

A mobile app built with Kotlin using the MVVM architecture pattern that displays character details from the popular animated television show, Rick and Morty. The app uses the Rick and Morty API to retrieve character data and follows the Android recommended best practices.

Kotlin 100.00%
dependency-injection flows mvvm-architecture paging3 remote-mediator retrofit

rickandmorty's Introduction

RickAndMortyApp

A mobile application built with Kotlin and MVVM architecture pattern that displays character details from the popular animated television show, Rick and Morty. This app uses the Rick and Morty API to retrieve character data and follows the Android recommended best practices.

Features

  • Display a list of all Rick and Morty characters
  • View detailed information about each character including their name, species, status, and origin
  • Offline support with remote mediator and caching

Techstacks

The app is built using popular libraries including:

  • Paging 3 Paging is a part of Android Jetpack and a data library that provides a simple and efficient way to load data, especially when dealing with large datasets. It helps to load data gradually and gracefully within our app's UI.
  • Room Room is a part of the Android Jetpack and a persistence library that provides an abstract layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
  • Navigation Component Navigation Component is a part of Android Jetpack and a UI toolkit for navigating between screens within an app. It provides a simple, consistent and flexible way to manage navigation in the app.
  • Retrofit Retrofit is a popular networking library for Android that makes it easy to consume RESTful APIs.
  • Kotlin Coroutines Coroutines are a Kotlin feature that makes it easier to write asynchronous, non-blocking code.
  • Hilt Hilt is a dependency injection library for Android that provides a standard way to manage dependencies in an Android app.
  • Glide Glide is a popular image loading library for Android that makes it easy to load and display images in the app.
  • ViewModel The ViewModel library is part of the Android Jetpack and a UI component that is responsible for preparing and managing the data for an Activity or a Fragment.
  • Remote Mediator The Remote Mediator library is used for offline caching of data in the app. It provides a simple way to cache data from the API to the device, making the app more efficient and user-friendly, even when there's no internet connection.
  • Gson A Java library that can be used to convert Java Objects into their JSON representation.
  • Data binding The Data Binding Library is a support library that allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically.

Usage

To use this app, simply clone or download the repository, open the project in Android Studio and run the app on an emulator or physical device. The app will use the Rick and Morty API to retrieve character data and display it to the user, or you can download the apk file attached.

Contributions

We welcome contributions to this project. If you have any suggestions or want to report a bug, please open an issue or submit a pull request.

Screenshots

rickandmorty's People

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.