Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bedirhanssaglam/news-app-with-kotlin
News App: Kotlin, Coroutines, Hilt, Retrofit2, Room, Navigation Components, Glide, View Binding, MVVM, Repository pattern, pagination.
https://github.com/bedirhanssaglam/news-app-with-kotlin
android android-application coroutines glide kotlin mvvm navigation-component news retrofit2 room viewbinding
Last synced: 5 days ago
JSON representation
News App: Kotlin, Coroutines, Hilt, Retrofit2, Room, Navigation Components, Glide, View Binding, MVVM, Repository pattern, pagination.
- Host: GitHub
- URL: https://github.com/bedirhanssaglam/news-app-with-kotlin
- Owner: bedirhanssaglam
- Created: 2024-07-14T22:19:07.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-14T23:30:52.000Z (6 months ago)
- Last Synced: 2024-11-13T22:08:26.475Z (2 months ago)
- Topics: android, android-application, coroutines, glide, kotlin, mvvm, navigation-component, news, retrofit2, room, viewbinding
- Language: Kotlin
- Homepage:
- Size: 72.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
News App
## Overview
- **Language and Asynchronous Programming**: Built entirely in [Kotlin](https://kotlinlang.org/) with [Coroutines](https://developer.android.com/kotlin/coroutines) for efficient asynchronous programming.
- **Dependency Injection**: Utilizes [Hilt](https://developer.android.com/training/dependency-injection/hilt-android) for dependency injection, simplifying management of dependencies throughout the app.
- **Networking**: Integrates [Retrofit2](https://square.github.io/retrofit/) for robust network requests handling, ensuring seamless communication with APIs.- **Local Database**: Implements [Room](https://developer.android.com/jetpack/androidx/releases/room) for efficient local data storage, offering a reliable and structured way to manage app data.
- **Navigation**: Uses [Navigation Components](https://developer.android.com/guide/navigation) to implement navigation within the app, providing a consistent and predictable user experience.
- **Image Loading**: Leverages [Glide](https://bumptech.github.io/glide/) for efficient image loading and caching, enhancing the app's performance when displaying images.
- **View Interaction**: Implements [View Binding](https://developer.android.com/topic/libraries/view-binding) to simplify interaction between views and activities/fragments, reducing boilerplate code and improving maintainability.
- **Pagination**: Implements pagination to efficiently load and display large datasets from the News API, enhancing user experience with seamless scrolling and data loading.
## Screenshots
## Architecture
The News App follows the MVVM architecture pattern along with the Repository pattern, adhering to [Google's recommended architecture](https://developer.android.com/topic/architecture).
## API Integration
The app integrates with the [News API](https://newsapi.org/) to fetch and display news content.