Skip to content

This app is built with MVVM + Clean Architecture design pattern. A Movie app that allows users to browse, search and like movies.

Notifications You must be signed in to change notification settings

dilarakiraz/MovieApplicationCompose

Repository files navigation

Movie App Compose

This app is an Android app built using Android Native Library Jetpack Compose and Material 3 design guidelines. The app follows Google recommended best practices and architecture.

Screenshot

Main Screen Detail Screen Add to Favorites Banner
home detail addFav banner
Favorites Screen Filter Screen Search Screen AL Screen
favScreen filter search alScreen

Tech Stack & Open Source Libraries

  • Minimum SDK level 21
  • 100% Kotlin based + Flow and Coroutines
  • Architecture Components
    • Repository pattern is a design pattern that isolates the data layer from the rest of the app
    • ViewModel class is a business logic or screen level state holder. It exposes the state to the UI and encapsulates related business logic
    • Lifecycle is a class that holds the information about the lifecycle state of a component (like an activity or a fragment) and allows other objects to observe this state
  • Navigation Component refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within the app
  • Retrofit A type-safe HTTP client for Android and Java
  • Gson is a Java library for converting Java Objects into their JSON representation
  • Dagger Hilt Hilt provides a standard way to incorporate Dagger dependency injection into an Android application
  • Coil An image loading library for Android backed by Kotlin Coroutines
  • Room persistence library provides an abstraction layer over SQLite, allowing for more robust database access while harnessing the full power of SQLite
  • Jetpack Datastore is a data storage solution that stores key-value pairs or typed objects with protocol buffers
  • Jetpack Compose is Android’s recommended modern toolkit for building native UI
  • Paging 3 helps you load and display pages of data from a larger dataset from local storage or over a network

Architecture

MVVM Model View ViewModel

mvvm

About

This app is built with MVVM + Clean Architecture design pattern. A Movie app that allows users to browse, search and like movies.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages