Skip to content

This is my public repository where I tried to create the clean architecture for Android development. Where it can be used for technical interview, proejct template. The tools I have followed: MVVM, Kotlin, Koin, Retrofit

License

Notifications You must be signed in to change notification settings

aliahmedbd/News-App-MVVM-Kotlin-Coroutine--Flow-Koin-Retrofit-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

News App using MVVM, Kotlin, Coroutine, Flows, Koin, Unit Test

In this repository I tried to create an Android project using Advanced technologies like MVVM design pattern, Kotlin (Koin, Coroutine, Flows) etc. The purpose of creating this repository to use in technical test / interview and personal usage for the best Android app development practice.

App Details:

newsScreen Screenshot 2022-08-13 at 22 40 57 Screenshot 2022-08-13 at 22 41 32

Features:

  1. News list: User can read the latest news based on their location.
  2. Search News: User can search news according to the keyword where user can see the latest headlines.
  3. Save Favorite News: User can save the interesting news in the favorite section.
  4. From the drawer menu user can read news according to the category.

Used Technologies

I tried to build this application following these terms. which are:

  • performance
  • readability
  • maintainability
  • testability
  • scalability
  • simplicity

The tools I have used to gain the Android Clean Architecture are:

Unit Test

For unit test I used Junit, where I tried two ways plain Unit test and Android instrumented unit test. For saving favorite news I used instrumented unit test for following test which Empty list check, Saved favorite list size test, news item already saved or not. Here is the test case result:

Screenshot 2022-08-13 at 22 54 37

API Specification

For this repository I have used a public news api. News Data: structured, relevant, real-time Search multi-language worldwide news articles published online with NewsCatcher's News API. Here is the link: https://newscatcherapi.com/

Screenshot 2022-08-13 at 22 49 18

About

This is my public repository where I tried to create the clean architecture for Android development. Where it can be used for technical interview, proejct template. The tools I have followed: MVVM, Kotlin, Koin, Retrofit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages