Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

sergio11/MovieAddicts

Repository files navigation

Movie Addicts

License API

A simple project to demonstrate an approach based on MVI + Clean architecture and modularization based on features and layers

Movie Addicts

Organization and structure of the application

Tech stack & Open-source libraries

  • Minimum SDK level 23
  • 100% Kotlin based + Coroutines
  • JetPack
    • LiveData - notify domain layer data to views.
    • Lifecycle - dispose observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
  • Architecture
    • Modularization by features and Layers
    • MVI UI Architecture ( Event + State + Effect)
    • Clean architecture approach with repository pattern
    • Dagger 2 - dependency injection
  • UI
    • DataBinding - Android DataBinding kit for notifying data changes to UI layers.
    • Material Design Components
    • Design based on Constraint Layout
    • Ripple animation, Shared element transition
  • Persistence
    • Retrofit2 & Moshi - constructing the REST API
    • OkHttp3 - implementing interceptor, logging and mocking web server
    • Glide - loading images
    • ObjectBox - The superfast NoSQL database for implementing a local cache layer.
    • Cloud Firestore - To persist users' favorite movies.
    • Firebase Auth - To authenticate users

Screenshots

Login

Movies

Tv Series

Stars

MAD Score

Visitors Count

Please Share & Star the repository to keep me motivated.

About

A simple project to demonstrate an approach based on MVI + Clean architecture and modularization based on features and layers

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /