NewsFeed, provides live top and breaking headlines for a country, specific category in a country, single source, or multiple sources, by interacting to News API
Define key in build.gradle
In your Android studio root directory, locate the gradle.properties
under .gradle
folder and add the following:
Add NEWS_APIKEY = "YOUR-API-KEY"
.
- MVI with Android Architecture Components(Room, LiveData, ViewModel)
- Leverage
NetworkBoundResource
Dagger2
for Dependency injection architectural pattern- Discover the top headlines news in a country
- Look for top headlines news based on Sources and categories
- Users can mark an article as favorite in the details view by tapping a heart icon
- Pagination and endless scrolling using custom pagination.
- Handle network status and network failures
- ConstraintLayout(guidelines, barriers... etc)
- ViewPager2
- Material design.
- Custom Navigation Controller for Multiple navigation graph
- Bottom Navigation Bar
Kotlin Coroutines
- AndroidX - Previously known as 'Android support Library'
- Glide - for loading and caching images
- Retrofit 2 - Type-safe HTTP client for Android and Java by Square, Inc.
- Gson - for serialization/deserialization Java Objects into JSON and back
- Dagger 2 - for dependency injection
- Android Architecture Components
- Material Design
NewsFeed uses the News API but is not endorsed or certified by NewsApi.