HenryUdorji / Theater

Theater is an app that loads movie data from TMDB API using MVVM approach, dependency injection with Dagger Hilt

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Theater

Theater is a nice looking app that consume api data from api.themoviedb.org to show both movies and tv series data

Features

  • Search
  • Play movie trailers
  • Read reviews
  • See full movie cast
  • Movies and TvSeries

Screens

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
  • Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
  • LiveData - Data objects that notify views when the underlying database changes.
  • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
  • Room - SQLite object mapping library.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
    • Room - SQLite object mapping library.
  • DaggerHilt - Dependency Injection Framework
  • Retrofit - A type-safe HTTP client for Android and Java.
  • Jetpack Navigation - Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app
  • Jetpack DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactional
  • Material Components for Android - Modular and customizable Material Design UI components for Android.

TODO 🗒️

  • Use Room as offline cache
  • Add test cases
  • Add pagination to search query and List of movies and tv-series
  • Add option to select either search for movies or tv-series

About

Theater is an app that loads movie data from TMDB API using MVVM approach, dependency injection with Dagger Hilt


Languages

Language:Kotlin 100.0%