Skip to content

Latest commit

 

History

History
62 lines (48 loc) · 3.04 KB

README.md

File metadata and controls

62 lines (48 loc) · 3.04 KB

Movie Compose

Movie Compose is an Application based on Modern Android tech-stacks especially focus on JetPack Compose UI using "The Movie DB API". Fetcheing data from network and integrating persisted data in the database via repository pattern.


Techs Used 💻

  • 100% Kotlin based
  • Coroutines + Flow for asynchronous.
  • StateFlow - StateFlow is a state-holder observable flow that emits the current and new state updates to its collectors.
  • Dagger-Hilt - Standard library to incorporate Dagger dependency injection into an Android application.
  • JetPack
    • Compose - A modern toolkit for building native Android UI.
    • Lifecycle - dispose observing data when lifecycle state changes.
    • ViewModel - Stores UI-related data that is lifecycle aware (didn't destroyed on UI changes).
    • Room Persistance - Room is an android library which is an ORM which wraps android's native SQLite database.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • MVVM Architecture (Declarative View - ViewModel - Model)
    • Repository pattern
  • Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.

Application Install

You can Install and test the app from below 👇

Movie Compose App

Find this repository useful? ❤️

Support it by joining stargazers for this repository. ⭐ And follow me for my next creations! 🤩

SetUp Project

Add your The Movie DB's API key in gradle.properties file.

api_key = "Your API Key"

License

Designed and developed by 2021 Rohit-2602 (Rohit Sharma)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.