/Rick-and-Morty

Rick and Morty Android app using Jetpack Compose, Apollo GraphQL client, Hilt, Paging and Room.

Primary LanguageKotlin

Rick-and-Morty

Rick-and-Morty is a small demo application to test out and showcase integrations with various modern Android tech stacks and libraries.

Tech-stacks & libraries used :

View(Fragment) based implementation

Dark mode Light mode
Using Views - Light theme Using Views - Dark theme

Jetpack Compose implementation

Dark mode Light mode
Using Jetpack Compose - Dark theme Using Jetpack Compose - Light theme

Branches:

This project started off initially with the regular view based UI, and after completion of the UI and all of the business logic, piece by piece (module by module) migration to the Jetpack Compose implementation began and has completely been migrated to Jetpack Compose now, and all of the view-based code has been removed.

Each of these stages has been individually tracked in separate respective branches as follows

TODO

  • Migrate to buildSrc
  • Migrate to GraphQl client
  • Add pagination for 'list screens'
  • Add shared element transitions for view based implementation
  • Enhance overall page animations for view based implementation
  • Migrate to Jetpack Compose
  • Improve router implementation
  • Add animations to the Jetpack Compose implementation

Getting started

This project doesn't require setting up any API key and can be built and run using the latest version of Android Studio Arctic Fox (stable channel) (tested with 2020.3.1 Patch 3). You just need to clone the project and are pretty much ready to go.

API

All of the data and images presented in this app are sourced from The Rick and Morty API. Huge thanks to Axel Fuhrmann for this.