News application using the API from https://newsapi.org/ API News Is JSON API for live news and blog articles from the media. News Feed is a simple that gives you latest and best news from multiple sources so you no longer need to swap between apps to stay informed.
I choose to use MVVM (Model-View-ViewModel) as my project architecture in order to provide a cleaner code, with clear separation between the view, the data and the business logic. The following diagram shows all the modules and how each module interact with one another after. This architecture using a layered software architecture.
- the default and updated branch is dagger/hilt and koin branch not updated
- Kotlin - official programming language for Android development .
- Coroutines - for asynchronous programming .
- 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.
- Room - Access your app's SQLite database with in-app objects and compile-time checks.
- Navigation -
- dagger-hilt - Dependency Injection Framework (Kotlin).
- Retrofit - A type-safe HTTP client for Android and Java.
- Fragment
- Glide for image loading
- pretty time - format time