Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/numq/mvarchitecture

Android Jetpack Compose Clean Architecture design patterns implementation
https://github.com/numq/mvarchitecture

android android-architecture android-compose arrow-kt clean-architecture compose coroutines-flow example functional-programming koin kotlin kotlin-coroutines mvc mvi mvp mvvm open-source reactive-programming room screaming-architecture

Last synced: about 3 hours ago
JSON representation

Android Jetpack Compose Clean Architecture design patterns implementation

Awesome Lists containing this project

README

        

# MVArchitecture
Android Jetpack Compose architectural patterns (_MVC, MVP, MVVM, MVI_) Screaming Clean Architecture implementation.

## About
An application that allows you to get a random image from [api](https://picsum.photos/) and save it as a favorite.

![App demonstration gif](../main/media/mvarchitecture_demo.gif)

![Full architecture diagram](../main/media/mvarchitecture_full_scheme.png)

**_*Some details have been omitted to provide a better visibility of the direction of the dependencies._**

## API
- [Lorem Picsum](https://picsum.photos/) - *Random image API*

## Features

*_Common:_*
- Verify required permissions

*_Random image:_*
- Get random image
- Add image to favorites
- Remove image from favorites

*_Favorite images:_*
- Get favorite images
- Load more images on scroll
- Remove image from favorites
- Undo image removal

## Tech
- Android Compose
- Kotlin
- Coroutines(Flow)
- Arrow-KT
- Koin DI
- Retrofit
- Room
- Coil
- Accompanist
- JUnit
- Mockk