farbodbj / GuardianNews

Simple online news feed app using Guardian Open platform based on clean architecture and best practices.
1 stars 0 forks source link
android android-application android-architecture clean-architecture hilt kotlin kotlin-android mvvm retrofit2

Guardian News

Description

This app is an android client for accessing news data from The Guardian using their Open Platform API which is publicly available. This project alongside with YourMusic were the two projects I have completed as an exercise in the process of my android bootcamp.

Stack

Tools Link
πŸ€– Kotlin Kotlin
🌐 Retrofit Retrofit
πŸ—„οΈ Room Room Persistence Library
πŸ“– Paging3 Paging3
πŸ—οΈ Hilt DI
πŸ–ΌοΈ Glide Media Loading

Design Process

This app was developed with regard to Google's app architecture recommendations and best practices. The app have used software engineering best practices and suitable design patterns/principles such as MVVM, Dependency Injection, SSOT and layered architecture to make it more maintainable and scalable.

The app has been tested for being crash-free, to provide a good UX and to have minimum runtime bugs which may or may not manifest when using the app.

Visuals

screenshots

main page (enivronment) main page (science) settings navigation drawer
main page (sky blue theme)

Usage

This project can easily be cloned, built and tested using android studio, the only change you need to apply is putting your own api-key inside the code at this part:

    const val API_KEY = "[YOUR_OWN_API_KEY]"

Contributing

Feel free to contribute to this project by pointing out any bugs, design flaws, updating for best practices or etc using issues or pull requests. I hope this app can be used as a reference for other learners or even be used to actually read some news :)