MovieAppQ is a sample Android project using The Movie DB API based on MVVM architecture. It showcases the app development with well-designed architecture and up-to-date Android tech stacks.
Most of us can relate to kicking back on the couch and enjoying a movie with friends and family. In this project, you’ll build an app to allow users to discover the most popular movies playing.
This app uses the API from The Movie DB
- 100% Kotlin
- Dagger Hilt
- MVVM architecture
- Android architecture components
- Navigation Jetpack
- Single activity
- dataBinding
- Coroutines
- Discover the most popular and the most rated movies
- User can view and play trailers on youtube
- Shows a list of reviews for each movie
- Users can mark a movie as favorite in the details view by tapping a heart icon
- Users can share movie trailers with their network
- Offline support: app makes use of NetworkBoundResource, which uses database as the single source of truth
- Advanced uses of Room
- MVVM with Android Architecture Components(Room, LiveData, Stateflow, ViewModel)
- Pagination and endless scrolling using Android paging library.
- Material design.
- Dagger dependency injector
- AndroidX
- Dagger
- Coroutines
- Glide
- Lottie
- Wang.avi
- Room
- Shimmer
- Retrofit 2
- Gson
- LiveData
- ViewModel
- DataBinding
- OkHttp
- Timber
Copyright 2021 Noor Yasser & Omar Mattr
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
https://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.