An android app consuming movies api build with Jetpack Compose

Overview

Movies App

An Android app consuming MovieDb API to display list of movies, built with Compose, MVVM pattern as well as Architecture Components.

Min Api Level: 21

Build System : Gradle

Table of Contents

Prerequisite

This project uses the Gradle build system. To build this project, use the gradlew build command or use "Import Project" in Android Studio.

App

The app loads the the movies from the api and displays them in a list. When the Movie is clicked the app navigates to the Details Screen which shows more details.

Architecture

The app is built using the Modular MVVM architectural pattern and makes heavy use of a couple of Android Jetpack components. MVVM allows for the separation of concern which also makes testing easier. The app has composable screen that communicates to ViewModel which in turn communicates to the usecase which communicates with Repository to get data.

Testing

The Data tests are located in the unit tests folder on the data module. To run the tests, run ./gradlew data:test, results will be posted on data/build/test-results

Libraries

Libraries used in the whole application are:

  • Jetpack 🚀
    • Viewmodel - Manage UI related data in a lifecycle conscious way
    • Compose - A modern declarative way to build android ui
    • Paging 3 used for paging
  • Retrofit - Type-safe HTTP client and supports coroutines out of the box. Used for the network calls.
  • Gson - Used to convert JSON to Java/Kotlin classes for the Retrofit
  • okhttp-logging-interceptor
    • logs HTTP request and response data.
  • kotlinx.coroutines - Library Support for coroutines
  • Hilt - Used for Dependency injection
  • Coil - Allows for fetching and displaying of images in the composables

Screenshots

You might also like...
MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows
MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows

MovieLibrary -An android application which uses tmdb API to fetch the data for various movies and TV Shows

TMDbHub - Listing movies using the TMDb API. You can filter results, view details, and save them to a collection
TMDbHub - Listing movies using the TMDb API. You can filter results, view details, and save them to a collection

TMDb Hub Listing movies using the TMDb API. You can filter results, view details

A lightweight, feature-rich wrapper for the Telegram Bot API, providing a handy Kotlin DSL to quickly build your bot.

Kotlin Telegram Bot Kotlin based wrapper over Telegram API. Current version of the Telegram Api: 6.0 Principles Annotations Magic. The basic interacti

Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an approach to clean architecture.
Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an approach to clean architecture.

movies-sample-app This is an Android app which fetches a sample movies list to display. Built using Kotlin and latest Android tech stack, with an appr

Simple Android movies app using MVVM clean architecture.
Simple Android movies app using MVVM clean architecture.

Simple Android movies app using MVVM clean architecture.

Top trending movies app for Android
Top trending movies app for Android

Flickwatcher Flickwatcher for Android lets you see today's latest trending movies! Cool Dependencies: Jetpack Compose Accompanist-Coil Kotlin Coroutin

Popular Movies showcase android app
Popular Movies showcase android app

Pop Flix PopFlix is a gorgeous client application for TMDb on Android, built using Kotlin. Architecture and Tech-stack Built on MVVM architecture patt

Android app for streaming and downloading Movies, TV-Series and Anime.
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream-3 DOWNLOAD: https://github.com/LagradOst/CloudStream-3/releases Discord: https://discord.gg/5Hus6fM Features: AdFree, No ads whatsoever No

Movie streaming is an android app that show us last,newest,top imdb and popular movies.
Movie streaming is an android app that show us last,newest,top imdb and popular movies.

Movies-Streaming-Android-App An Android application which shows Popular, New Movies, Top Rated movies and all the details of any movie like- Cast, Rev

Owner
Ronnie Otieno
Android - Kotlin/Java. Learning more. Also Google certified AAD.
Ronnie Otieno
Movies - Simple Application to show movies and advertisemnets

Movies Simple Application to show movies and advertisemnets Technologies This Ap

Reham Galal 0 Feb 3, 2022
Consuming Kanye West quotes REST API (Kanye as a Service)

Kanye Quotes A free REST API for random Kanye West quotes (Kanye as a Service) API

Eric G 5 Oct 23, 2021
Display's information about SpaceX crew members and ships by consuming a rest api and storing the data to display when the user is offline.

Space-X App Display's information about SpaceX crew members(look for ‘Crew’ section in rest api docs) and ships (look for ‘Ships’ section in rest api

krishna chaitanya 2 Apr 8, 2022
⌨️ A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configuration

⌨️ A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configuration

theapache64 467 Dec 23, 2022
An easy to use android library to let devs know how much internet-data their app is consuming

EasyAnalytics! an easy to use android library to let developers know how much internet-data their app is consuming. We can identify this as we want ba

Sachin Rajput 13 Feb 21, 2022
🎥 A Simple and Minimal Movies Android Application to demonstrate the Modern Android Development and Jetpack Compose.

ComposeMovie Android ?? A Simple and Minimal Movies Android Application to demonstrate the Modern Android Development and Jetpack Compose. Built with

null 13 Oct 1, 2022
Mobile app to Show Movies From TMDB API [Qhala Interview Solution], for the Android Engineer Role

Qhala Interview ?? ?? This is an Interview Tech challenge by Qhala I used TMDB API to solve this challenge. Screenshots Movies Movie Detail Prerequisi

James Nyakundi 5 May 1, 2022
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

Kagiri Charles 8 Nov 29, 2022
New version of my Android app that shows you popular movies using themoviedb.org API.

New version of my Android app that shows you popular movies using themoviedb.org API. Using Modern Android Develpment skills like Kotlin, Room, Retrofit, Hilt, coroutines, Flow and Jetpack Compose.

Gemma Lara Savill 0 Apr 21, 2022
The App Loads list of popular movies from a mock API and shows in a recyclerView

popular-movies-app About The App Loads list of popular movies from a mock API and shows in a recyclerView. Any item can be clicked to open the Movie D

Mayank Agarwal 0 Oct 30, 2021