- News Now is an Android app to read news.
- News are available in 7 categories which are General, Business, Entertainment, Sports, Health, Science and Technology.
- App theme can be changed between light and dark mode using a simple switch.
- Full news article can be read inside the app by just clicking on the article.
- News article link can be shared to other apps.
- News are cached using room database, so when app is launched with no internet cached news is displayed.
Light Mode 🌞 | Dark Mode 🌑 | News Article Open In App |
---|---|---|
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous and more.
- Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
- 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.
- ViewBinding - 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.
- Navigation - Navigation is a framework for navigating between ‘destinations’ within an Android application
- Room - The Room persistence library provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
- DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactionally.
- Dependency Injection -
- Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
- Hilt-ViewModel - DI for injecting
ViewModel
.
- Retrofit - A type-safe HTTP client for Android and Java.
- Moshi - A modern JSON library for Kotlin and Java.
- Moshi Converter - A Converter which uses Moshi for serialization to and from JSON.
- Glide - Glide is a fast and efficient open source media management and image loading framework for Android
- Material Components for Android - Modular and customizable Material Design UI components for Android
- News API is used to get all the news.