Playground for Kotlin, MVI and other stuff
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
api
data
gradle/wrapper
mocks
presentation
.gitignore
LICENSE
README.md
build.gradle
gradle.properties
gradlew
gradlew.bat
settings.gradle

README.md

klayground

==========================================

This project is a Playground for Kotlin, MVI, Clean Architecture and other things.

  • This project uses Marvel API Data provided by Marvel. © 2016 MARVEL
  • It is highly inspired / reimplementation of mosby-mvi sample for now. Will improve in future. MVI on top of MVP
  • Kotlin implementation is inspired from MVI For Android Video by oldergod

Clean Architecture

Currently divided into three module :

  • api : For API entities

  • data : For logic, Repositories, Uses Cases, Mappers

  • presentation : Views and Presenters

  • cache module (Future): Using Room in future

    presentation --> data --> api/cache
    

Branches

Contains two branches

  • [base-project] Without any MVP / MVI, just the backend and clean architecture in kotlin, to be used later
  • [mvi] MVP with MVI implementation

Libraries

This project uses

  • Clean Architecture
  • Retrofit for API with Moshi Converter
  • Dagger for Dependency Injection
  • Timber for logging
  • Reclaim for RecyclerView Adapters
  • Data Binding
  • RxBinding
  • Leak Canary
  • Architecture Components? Nullable :P
  • Spek Framework for testing

Krazzy Kool Kotlin Kid

Coming Soon!!

To-do

  • More Features
  • Architecture Components?
  • Improve Testing
  • Improve Documentation

Contributing

You are welcome to open PRs / issues, Give suggestions and feedback