https://github.com/mubaraknative/news-cast-mb
This News app demonstrate the typical workflow when we working with http client like (Retrofit)
https://github.com/mubaraknative/news-cast-mb
android-architecture-components coil-image-loader coroutines-flow dagger-hilt navigation-component news-app newsapp preference-screen retrofit room-database
Last synced: about 2 months ago
JSON representation
This News app demonstrate the typical workflow when we working with http client like (Retrofit)
- Host: GitHub
- URL: https://github.com/mubaraknative/news-cast-mb
- Owner: MubarakNative
- License: apache-2.0
- Created: 2024-03-08T17:45:53.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-13T15:38:21.000Z (11 months ago)
- Last Synced: 2024-07-13T16:52:42.238Z (11 months ago)
- Topics: android-architecture-components, coil-image-loader, coroutines-flow, dagger-hilt, navigation-component, news-app, newsapp, preference-screen, retrofit, room-database
- Language: Kotlin
- Homepage:
- Size: 4.48 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# NewsCastMB
**NewsCastMB** is a feature-rich news application built to demonstrate Modern Android Development best practices and the latest tools.
## 🛠Built With
This app is developed using:
- **Android Views (XML)** for UI design.
- **Room** database for offline news caching.
- **Paging 3** library for efficient pagination and large data handling.
- **Retrofit** for making network requests.
- **Dagger Hilt** for dependency injection.
- **Navigation Component** for seamless fragment navigation.
- **Coil** for efficient image loading.
- **Kotlin Flows & Coroutines** for reactive UI.
- **PreferenceSettingCompat** for managing app settings.## 🚀 Features

Key features of **NewsCastMB**:
- ✅ Offline article caching using Paging 3 Remote Mediator.
- ✅ Bookmark articles for offline reading using Room.
- ✅ Multiple news categories with a tab layout.
- ✅ Edge-to-edge UI, drawing behind the system bars.
- ✅ Light & Dark theme support using PreferenceSettingCompat.
- ✅ Search functionality to find specific articles.
- ✅ Swipe to delete for bookmarked news and more...## 👀 Note
> **Before you begin**
This app uses the **NewsAPI** service to fetch articles. To display news, you need to [register an account](https://newsapi.org/register), get an API key, and include it in **`AppConstants.API_KEY`**.
## 🔧 Improvements
This app is built with **Android Views** and relies on an external news API, which is not free.
For a more advanced version, check out **[WikiNewsFeed](https://github.com/MubarakNative/WikiNewsFeed)**—built with **Jetpack Compose** and powered by the free **WikiNews API**.