A simple news app build using MVVM architecture. Discover the most popular and top rated movies playing. Movies data fetched using tomdbapi.com API.
App uses OMDb API service to load data using retrofit and display on the user screen.
Structural design pattern
The app is built with the Model-View-ViewModel (MVVM) is its structural design pattern that separates objects into three distinct groups:
- Models hold application data. They’re usually structs or simple classes.
- Views display visual elements and controls on the screen. They’re typically subclasses of UIView.
- View models transform model information into values that can be displayed on a view. They’re usually classes, so they can be passed around as references.
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous and more..
- Hilt - Dependency injection library for Android that reduces the boilerplate of doing manual dependency injection in your project
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- ViewDataBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
- Retrofit - A type-safe HTTP client for Android and Java.
- Coil-kt - An image loading library for Android backed by Kotlin Coroutines.
- Material Components for Android - Modular and customizable Material Design UI components for Android.
|Home Screen||More Movie Screen||Movie Player Screen|
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Android Studio 3.2+
- Java JDK
Follow these steps if you want to get a local copy of the project on your machine.
1. Clone or fork the repository by running the command below
2. Import the project in AndroidStudio, and add API Key
- In Android Studio, go to File -> New -> Import project.
- Follow the dialog wizard to choose the folder where you cloned the project and click on open.
- Android Studio imports the projects and builds it for you.
- Add OMDb API Key inside
API_KEY="Your API Key here"