All Projects â†’ skydoves â†’ Goldmovies

skydoves / Goldmovies

Licence: apache-2.0
👑 The GoldMovies is based on Kotlin, MVVM architecture, coroutines, dagger, koin, and material designs & animations.

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Goldmovies

Marvelheroes
❤️ A sample Marvel heroes application based on MVVM (ViewModel, Coroutines, LiveData, Room, Repository, Koin) architecture.
Stars: ✭ 826 (+163.06%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Awesome Android Kotlin Apps
👓 A curated list of awesome android kotlin apps by open-source contributors.
Stars: ✭ 1,058 (+236.94%)
Mutual labels:  coroutines, mvvm, dagger
Pokedex
🗡️ Android Pokedex using Hilt, Motion, Coroutines, Flow, Jetpack (Room, ViewModel) based on MVVM architecture.
Stars: ✭ 4,882 (+1454.78%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Disneycompose
🧸 A demo Disney app using Jetpack Compose and Hilt based on modern Android tech-stacks and MVVM architecture.
Stars: ✭ 368 (+17.2%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Themovies2
🎬 A demo project using The Movie DB based on Kotlin MVVM architecture and material design & animations.
Stars: ✭ 297 (-5.41%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Disneymotions
🦁 A Disney app using transformation motions based on MVVM (ViewModel, Coroutines, Flow, LiveData, Room, Repository, Koin) architecture.
Stars: ✭ 1,105 (+251.91%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Mvvm Kotlin Android Architecture
MVVM + Kotlin + Retrofit2 + Hilt + Coroutines + Kotlin Flow + mockK + Espresso + Junit5
Stars: ✭ 1,014 (+222.93%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Clean Mvvm Archcomponents
👽 Android app consuming Star Wars API.Built with clean architecture ,MVVM pattern, Koin , Coroutines + Flows ,Architecture Components, Data Binding , Firebase , Unit/UI Tests ,Motion Layout
Stars: ✭ 285 (-9.24%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Harrypotter
🧙🏻 Sample HarryPotter application based on MVVM architecture (ViewModel, LiveData, Repository, Coroutines, Koin or Dagger-Hilt)
Stars: ✭ 116 (-63.06%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Movietray
Its a playground application focusing on Paging3, MVVM architecture, Kotlin Extension functions, Retrofit, DSL, Navigation component, MotionLayout, SharedElementTransition, Single Activity Architecture, DataStore etc.
Stars: ✭ 78 (-75.16%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Movieapp Clean Architecture
Learning Project (Movie App) For Applying Android Architecture Components And Clean Architecture Using MVVM With Kotlin
Stars: ✭ 123 (-60.83%)
Mutual labels:  coroutines, mvvm, mvvm-architecture
Githubfollows
A demo project based on MVVM architecture and material design & animations.
Stars: ✭ 272 (-13.38%)
Mutual labels:  mvvm, mvvm-architecture, dagger
JustJava-Android
JustJava is a mock food ordering and delivery application for a coffee shop.
Stars: ✭ 59 (-81.21%)
Mutual labels:  coroutines, mvvm-architecture
FindTaek
📦 내가 시킨 택배가 어디까지 왔는지 확인해보세요
Stars: ✭ 26 (-91.72%)
Mutual labels:  mvvm, mvvm-architecture
Swinjectmvvmexample
An example to use Swinject in MVVM architecture with ReactiveCococa
Stars: ✭ 301 (-4.14%)
Mutual labels:  mvvm, mvvm-architecture
DeezerClone
This Application using Dagger Hilt, Coroutines, Flow, Jetpack (Room, ViewModel, LiveData),Navigation based on MVVM architecture.
Stars: ✭ 81 (-74.2%)
Mutual labels:  coroutines, mvvm
Paging-3-Sample
This app is created as a sample app which loads movies from Tmdb api and uses Paging 3 library to show it in a Recycler view.
Stars: ✭ 96 (-69.43%)
Mutual labels:  coroutines, mvvm
GitHubApplication
GitHubApplication 📱 is an Android application built to demonstrate the use of modern Android development tools - (Kotlin, Coroutines, Hilt, LiveData, View binding, Data Store, Architecture components, MVVM, Room, Retrofit, Navigation).
Stars: ✭ 11 (-96.5%)
Mutual labels:  coroutines, mvvm
TMDbMultiplatform
Step-by-step guide on Kotlin Multiplatform
Stars: ✭ 86 (-72.61%)
Mutual labels:  mvvm, mvvm-architecture
WanAndroidMVVM
WanAndroid 客户端,采用 Kotlin 语言编写,项目使用 JetPack-MVVM 架构,采用 Retrofit + Coroutines + Coil 等开源框架开发。
Stars: ✭ 21 (-93.31%)
Mutual labels:  coroutines, mvvm

GoldMovies

License API Build Status License

👑 The GoldMovies is based on Kotlin, MVVM architecture, coroutines, dagger, koin, and material designs & animations.

Previews

What Open API Used?

The Movies Database (TMDB) is a community built movie and TV database. Every piece of data has been added by our amazing community dating back to 2008. TMDb's strong international focus and breadth of data is largely unmatched and something we're incredibly proud of. Put simply, we live and breathe community and that's precisely what makes us different.

How to build on your environment

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

tmdb_api_key=YOUR_API_KEY

Module structure

The module structure is designed to try several different architectures.

Entity module

Entity module composed of entity models for persisting in database and response models for fetching data from network requests.

Dependencies

  • Room Persistence - constructing database (An abstraction layer over SQLite).
  • Gson converter - a converter which uses Gson for serialization to and from JSON.
  • Threetenabp - an adaptation of the JSR-310 backport for Android.

Unit Test

Unit Tests to construct database and migration to newer versions using the Room.

Network module

Network module composed of abstractions for RESTful requests. And ApiResponseModel for standardizing a raw request model. An Interceptor for requesting every time with a query parameter api_key.

Dependencies

Unit Test

Unit Tests to verify RESTful requests abstractions via a testing web server and mocked data.

Common-ui module

Common-ui module composed of adapters and viewholders for composing recyclerview's item via databinding. And some factories and extensions related to custom views.

Dependencies

  • Google-Material - material Components for Android (MDC-Android) help developers execute Material Design.
  • Glide - loading image.
  • GlidePalette - compatible with glide, extracting a primary color from an image.
  • BaseRecyclerViewAdapter - fast way to binding RecyclerView adapter and ViewHolder for implementing clean sections.
  • WhatIf - fluent Kotlin expressions for a single if-else statement, nullable and boolean.
  • Flourish - a polished and dynamic way to show up layouts.
  • AndroidRibbon - beautiful and the simplest ribbon view with shimmering effect.
  • ExpandableTextView - allows developers to easily create an TextView which can expand/collapse.

Mvvm module

Mvvm module is the implementation of user interfaces on the application. Based on mvvm architecture (view-databinding-viewmodel-model) with the repository pattern.

  • JetPack
    • LiveData - notify domain layer data to views.
    • Lifecycle - dispose observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
    • Room Persistence - construct database.
  • Dagger2 - constructing dependency injection framework based on compile-time.
  • Timber - this is a logger with a small, extensible API.

Unit Test

Unit Tests verify the interactions of viewmodels between repositories and dao & REST api requests.

Mvvm-coroutines module

Mvvm-coroutines module almost same as the Mvvm module. Implementation of user interfaces on the application. Based on mvvm architecture and coroutines.

  • Coroutines - kotlin side(at the language level) supports for asynchronous programming.
  • Koin - A pragmatic lightweight dependency injection, actually service locator.
  • Timber - this is a logger with a small, extensible API.

Unit Test

Unit Tests verify the interactions of viewmodels between repositories and DAO & REST api requests.

Unit Testing Frameworks

  • Robolectric - Robolectric is the industry-standard unit testing framework for Android.
  • Mockito-Kotlin - a small library that provides helper functions to work with Mockito in Kotlin.

User Interface Design

Based on Material design & animations.

  • Google Material Design.
  • Ripple Effect.
  • Shared Element Transition.

Find this repository useful? ❤️

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

Sponsor ☕️

If you feel like to sponsor me a coffee for my efforts, I would greatly appreciate it.

Buy Me A Coffee

License

Designed and developed by 2019 skydoves (Jaewoong Eum)

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].