MovieApp with TDD, Clean Architecture & Jetpack Compose

Related tags

App MovieApp
Overview

MovieApp

This app uses TMDB's multi search API to fetch polymorphic json response.

Application shows the different media types returned from the API in their respective categories.

In this particular, cache doesn't make much sense because user will always have to get the results from remote server.

But just to showcase the implementation, MovieApp uses SharedPreferences as cache. I've decided to use Shared Preferences over retrofit's cache mechanish because it gives me control over the whole cache process.

Built With

App is built with Test Driven Development (TDD) approach, clean architecture and uses data layer as library module.

  • Jetpack Compose - Google's latest declarative UI toolkit
  • Kotlin - Programming language for Android
  • Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
  • Retrofit - A HTTP client.
  • Coroutines - For asynchronous
  • Kotlin StateFlow & SharedFlow - Data objects that notify views.
  • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
  • ComposeDestination - KSP based Library for navigation in Jetpack Compose that internally uses Android's own Navigation Component

Note

Run the ./gradlew kspDebugKotlin command to generate Navigation Graph and Destination.

You might also like...
MVVM News Application with clean code architecture & android jetpack components.
MVVM News Application with clean code architecture & android jetpack components.

Android - Clean Architecture - Kotlin The purpose of this repo is to follow up Clean Architecture principles by bringing them to Android. The repo con

πŸš€ Sample Android Clean Architecture on Rorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.
πŸš€ Sample Android Clean Architecture on Rorty App focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.

Android Clean Architecture Android Clean Architecture in Rorty is a sample project that presents modern, approach to Android application development u

A minimalistic Android application Built with Clean architecture and Jetpack component
A minimalistic Android application Built with Clean architecture and Jetpack component

MovieMania A minimalistic Android application Built with Clean architecture and Jetpack component (Jetpack Compose, MVVM , Paging 3.0, HILT, ROOM DB,

A Clean Architecture Cryptocurrency App (MVVM, Use Cases, Compose)

A Clean Architecture Cryptocurrency App (MVVM, Use Cases, Compose)

Episodie is a TV show time tracker app with unusual design written in kotlin and clean architecture approach. Get to know how much time you spent watching tv shows.
Episodie is a TV show time tracker app with unusual design written in kotlin and clean architecture approach. Get to know how much time you spent watching tv shows.

Episodie Episodie is a TV show time tracker app with unusual design. Get to know how much time you spent watching tv shows. Track easily overall progr

KataContacts written in Kotlin. The main goal is to practice Clean Architecture Development

KataContacts written in Kotlin We are here to practice Clean Architecture Development. Clean Architecture is a way of structuring code. We are going t

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

Simple Android movies app using MVVM clean architecture.

Movie discovery app showcasing MVP, RxJava, Dagger 2 and Clean Architecture
Movie discovery app showcasing MVP, RxJava, Dagger 2 and Clean Architecture

MovieGuide 🚧 Refactoring in progress πŸ‘·β€β™€οΈ ⛏ πŸ‘· πŸ”§οΈ πŸ‘· πŸ”§ 🚧 Comments and new issues are welcome. πŸ‘ Currently not accepting external PRs that touch

The Rick And Morty - MVVM with a clean architecture approach using some of the best practices in Android Development.
The Rick And Morty - MVVM with a clean architecture approach using some of the best practices in Android Development.

Rick-and-Morty The Rick And Morty - App consuming a Rick and Morty API to display Characters it has been built with clean architecture principles, Rep

Owner
M Saif Ullah
Android Developer Self taught
M Saif Ullah
NewsSpac-MVVM-CleanArch-TDD - The App uses MVVM architecture together with Clean architecture

Aplicativo NewsSpace Arquitetura O App utiliza a arquitetura MVVM em conjunto co

null 1 Feb 11, 2022
MovieApp - Movie App using Clean Architecture with MVVM architectural pattern

MovieApp In this project, MovieDB API has been used to retrive movie data. Upcom

Cansu Aktaş 2 Jun 17, 2022
This software was developed using an Agile and TDD methodology

VM-EmpDirectory Software Development Approach This software was developed using

null 0 Dec 22, 2021
Easy Note: Building a Notes app using MVVM, JetPack Compose with a clean multi-module architecture approach.

Easy Note Easy Note: Notes app using JetPack Compose and MVVM with a clean architecture approach. This app shows the usage of the new Navigation Archi

Akhilesh Patil 10 Dec 17, 2022
Weather app : Jetpack Compose Clean Architecture Example

Weather app - Jetpack Compose Clean Architecture Example Weather app is an example for show current weather from World Cities, built with Jetpack Comp

Bach 20 Nov 21, 2022
A sample demo app which has Clean Architecture with MVVM , UI built with Jetpack Compose

A sample demo app (two screen todo list app) which has Clean Architecture with MVVM , UI built with Jetpack Compose and includes Modern Android Development Best Practices with components

BHAVNA THACKER 21 Dec 13, 2022
Dose a Android app that reminds you medications exactly when your body needs them, building entirely using Kotlin and Jetpack Compose with MVVM + Clean Architecture

??⏰ Dose is a work-in-progress Android app that reminds you medications exactly when your body needs them, building entirely using Kotlin and Jetpack Compose with MVVM + Clean Architecture

Waseef Akhtar 195 Jan 1, 2023
Food Recipes - Android application built with Jetpack compose, MVVM and clean architecture approach.

Food Recipes Android application that consuming (https://spoonacular.com/food-api) "Recipes api". It has been built with clean architecture principles

Mahmoud Elshahat 26 Jan 29, 2023
Weather application example with Android Architecture components and Clean Architecture

Weather application example with Android Architecture components and Clean Architecture Weather app that shows how to architect an android app in a cl

null 2 Dec 3, 2021