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

https://github.com/illarionov/compose-tree

Какой-то тестовый проект, не смотрите
https://github.com/illarionov/compose-tree

Last synced: 3 months ago
JSON representation

Какой-то тестовый проект, не смотрите

Awesome Lists containing this project

README

          

# compose-tree

Какой-то тестовый проект — не обращайте внимания.

## Стек

Kotlin, Compose Coroutines, MVI (MVIKotlin), Room, SQLite, Hilt, Architecture Component (ViewModel), Clean Architecture…

### Архитектурные соглашения

* Весь код находится в одном модуле — чтобы не тратить время на настройку многомодульности.
Внутри модуля всё разложено по папкам, чтобы представить, как это могло бы выглядеть в многомодульной структуре.
* Допускается использование kotlinx-io-bytestring в domain-слое.
Можно посчитать, что это нарушает принятое правило "не использовать внешние библиотеки в domain", но в данном случае
мы сами определяем допустимый набор зависимостей в domain. Иммутабельные ByteArray дают нам ряд преимуществ.
По той же причине разрешаем использование Parcelable.

##### Прочее

* Навигация реализована прямо в Store/Executor. Нормально сделать не получилось, лучше переделать.
* Часть нечетко сформулированных требований реализована так, как было удобнее.