Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.72 KB

README.md

File metadata and controls

43 lines (30 loc) · 1.72 KB

kotlin-repos-android

This repo represents the implementation of a basic list-detail app created to display a list of trending Kotlin repos from github.

Purpose

The purpose of this implementation is to play with Architecture Components and Koin.

UI

List Detail
list detail

Architecture and Implementation approach

I've decided to go for the presentation pattern MVVM and Clean Architecture to decouple layers and concerns as much as possible.

My goal was to separate the different features/modules: common, list and detail in feature modules but for now I just kept them in the main module applying the layers separation using packages.

layers

If you would like to see a sample implementation with MVP + CleanArch + Dagger2 + Feature modules, feel free to go to this repo https://github.com/claucookie/android_lastfm_kotlin

The ViewModel has been implemented using LiveData and Data Binding.

class diagram

Tools

Testing

Unit tests for the data, domain and presentation layer. To run unit tests, open the console, go the root folder of the project and execute the command

$ ./gradlew test