r0shanbhagat / OMDb-App

OMDb-App app using Clean Architecture with MVI pattern along with Android Architecture Components such as Flow, ViewModel, Navigation and idiomatic Kotlin using extension functions, type-aliases, Coroutines and Dependency Injection using Hilt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Introduction

OMDb-App is a implementation of the popular images source feature of 500px which using the 500px API built using modern Android development strategies focusing on the following key aspects:

  • Code structuring as per clean Architecture
  • Using MVVM/MVI Pattern as per Google's recommendation
  • Android Architecture Components (LiveData, ViewModel, Navigation)
  • Kotlin features (Lambdas, Extension functions, typealias, sealed class and Coroutines)

App Overview

  1. Search the Movies by Name
  2. Show the List of Suggested Movies
  3. Show the Details of Movie by Tapping on that.

Search Movie Popular Movie List Movie Detail

Navigation between the screens has been done using the Jetpack Navigation library and the following is its nav graph:

🚀 MAD Scorecard

Libraries The App uses libraries and tools used to build Modern Android application, mainly part of Android Jetpack

Scope for Improvements

The app can be further improved with the addition of the following features

  • Adding Level 2 implementation
  • Build UI tests
  • Start blog series

About

OMDb-App app using Clean Architecture with MVI pattern along with Android Architecture Components such as Flow, ViewModel, Navigation and idiomatic Kotlin using extension functions, type-aliases, Coroutines and Dependency Injection using Hilt


Languages

Language:Kotlin 100.0%