Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lovicesunuwar/android-kotlin-compose-news-app
A simple News app consuming Restful API from newsapi .org | Following Best Practices | MVVM | Dependency Injection | Dagger-Hilt | Coroutines | Retrofit | Central Dependency management |
https://github.com/lovicesunuwar/android-kotlin-compose-news-app
compose coroutines dependency-injection gson-converter hilt-dagger2 hilt-dependency-injection-android jetpack-compose kotlin kotlin-android kotlin-coroutines moshi moshi-converter mvvm-android okhttp3 retrofit2
Last synced: 26 days ago
JSON representation
A simple News app consuming Restful API from newsapi .org | Following Best Practices | MVVM | Dependency Injection | Dagger-Hilt | Coroutines | Retrofit | Central Dependency management |
- Host: GitHub
- URL: https://github.com/lovicesunuwar/android-kotlin-compose-news-app
- Owner: LoviceSunuwar
- Created: 2023-10-23T17:59:15.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-26T19:31:14.000Z (over 1 year ago)
- Last Synced: 2025-01-13T21:10:05.780Z (26 days ago)
- Topics: compose, coroutines, dependency-injection, gson-converter, hilt-dagger2, hilt-dependency-injection-android, jetpack-compose, kotlin, kotlin-android, kotlin-coroutines, moshi, moshi-converter, mvvm-android, okhttp3, retrofit2
- Language: Kotlin
- Homepage: https://newsapi.org/
- Size: 1.49 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
https://github.com/LoviceSunuwar/Kotlin-Compose-News-App/assets/53461002/519a1aee-a298-4a07-b904-6ad7737c3063
![Screenshot](https://github.com/LoviceSunuwar/Kotlin-Compose-News-App/assets/53461002/82899105-46a6-440d-a011-15591011a3f4)
The "Kotlin-Compose-News-App" is a modern Android application that incorporates various technologies and architectural patterns to provide a robust and efficient user experience. Here's a summary of its key features:
- **JetPack Compose:** The app utilizes JetPack Compose, which is a modern Android UI toolkit for building native user interfaces through a declarative and reactive approach.
- **MVVM (Model-View-ViewModel):** The app follows the MVVM architectural pattern, separating the user interface (View) from the underlying data and business logic (Model and ViewModel).
- **Dependency Injection (Dagger-Hilt):** Dagger-Hilt is used for dependency injection, making it easier to manage and provide dependencies to different parts of the application.
- **Clean Code Structure:** The app maintains a clean and organized code structure, making it easier to develop, maintain, and scale the application.
- **UI Layer:** The user interface is built using JetPack Compose, providing a modern and intuitive interface for the app's users.
- **Data Layer:** The data layer is responsible for handling data retrieval, storage, and management.
- **Retrofit:** Retrofit is used for making network requests, enabling efficient communication with remote servers.
- **Coroutines:** Coroutines are used to manage asynchronous operations, making the app responsive and performant.
- **Flow:** Flow is employed for reactive programming, allowing the app to handle data streams efficiently.
- **Moshi:** Moshi is used for JSON parsing and serialization, ensuring data compatibility between the app and external services.
- **OKHttp:** OKHttp is used as the HTTP client, enhancing network connectivity and data retrieval.
- **Background Thread:** Background threads are utilized for performing tasks that should not block the main thread, ensuring a smooth user experience.
In summary, the "Kotlin-Compose-News-App" is a well-structured and modern Android application that leverages the power of JetPack Compose, MVVM architecture, and various libraries and tools to provide a seamless and efficient news browsing experience. It demonstrates best practices in Android app development, including clean code organization, dependency injection, and efficient handling of network requests and data streams.