Skip to content

ahmedsamir9/MovieAppKotlin

Repository files navigation

movies Land Android

  • sample movie app (single activity app) that show movies and actors using tmdb api

🎥 Watch demo on youtube

🧐 About

  • main purpose for building this project is to achieve Single source of truth(SSOT) principle(which is local Db) and handle all states for every screen

Features

  • [1] get popular ,toprated ,upcoming and playingnow movies
  • [2] search for actor or movies using coroutines flos
  • [3] know actor information and get all his work
  • [4] can watch the movie in cimaclub site
  • [5] show movie details

📱 Screenshots

Screen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PMScreen Shot 2020-09-04 at 2 48 55 PM

Requirements

  • android Lollipop or higher

⚡ Technologies and libraries

  • hilt for di
  • kotlin Coroutine and flows for (threading and backgroud)
  • Room DataBase (the main source of data)
  • recyclerview
  • paging 3 (for handling paging)
  • workManger (for deleting cached data if there is strong internet connection and no low battery )
  • material design
  • navigation component
  • lottie (for doing animation)
  • mvvm architecture
  • lifecycle component
  • retrofit (for network calls)
  • repository pattern
  • network Bound Resouses
  • Glide (for handling images)
  • motionlayout (for animation)

architecture :

Screen Shot 2020-09-04 at 2 48 55 PM

Navigation graph :

Screen Shot 2020-09-04 at 2 48 55 PM

Resources