Skip to content

An Android app showing the Rick and Morty Characters by using the Rick and Morty API.

Notifications You must be signed in to change notification settings

almasud/Rick_and_Morty_characters

Repository files navigation

Rick_and_Morty_characters

An Android app showing the Rick and Morty Characters by using the Rick and Morty API.

Issues Page Issues with labels filter

Youtube Logo

Direct download app

Table of Contents

Architecture

This project follows the MVVM (Model-View-ViewModel) architecture, which separates the UI, business logic, and data layers. Here's an overview of the architecture:

  • View: Implemented using Jetpack Compose, it displays UI components and interacts with the ViewModel.
  • ViewModel: Manages UI-related data and communicates with the repository.
  • Repository: Provides an abstraction over data sources (e.g., local database, remote API) and uses Paging 3 for efficient data loading.
  • Data Sources: Handles data retrieval from local Room Database and remote API using Coroutines and Flow.
  • Dependency Injection: Hilt is used for providing and managing dependencies.

Libraries Used

  • Jetpack Compose: A modern Android UI toolkit for building native user interfaces.
  • Hilt: A Dependency Injection library for Android that reduces boilerplate code.
  • Paging 3: A library for handling large datasets with automatic loading and caching.
  • Kotlin Coroutines: Used for asynchronous and non-blocking programming.
  • Kotlin Flow: A library for asynchronous data stream processing.
  • Room Database: An Android library for local database storage.
  • Retrofit: A type-safe HTTP client for making network requests.
  • Coil: An image loading library for Android.
  • Placeholder: A library for displaying placeholder content in Jetpack Compose.
  • Timber: A library for logging.
  • Gson: A library for JSON parsing.
  • Navigation Compose: A library for navigation in Jetpack Compose apps.

Getting Started

Follow these steps to run the project locally:

  1. Clone the repository: git clone https://github.com/almasud/Rick_and_Morty_characters.git
  2. Open the project in Android Studio or your preferred IDE.
  3. Build and run the app on an Android emulator or device.

Features

List the key features of your project, such as:

  • Character List Screen: Display the list of characters fetched from the Rick and Morty API. Each character item in the list should display relevant information (e.g., name, image, status).
  • Character Detail Screen: When a character item is clicked on the list, navigate to a detail screen. Display detailed information about the selected character (e.g., name, image, status, species, gender, origin, location).
Thank you all and happy codding...

Abdullah Almasud

About

An Android app showing the Rick and Morty Characters by using the Rick and Morty API.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages