MicroUtilsΒΆ
MicroUtils
is a set of libraries to help me (and, I hope, you too) in some routine doings of coding.
First of all, this library collection is oriented to use next technologies:
Warning
Due to complexity of this library, it is possible that some things will be missed or inactual. Me and the users of this library will try hard to keep its docs as actual as possible, but in case you will find some inconsistency of docs and library work (signatures, behaviour, API) you may write me directly in my telegram
flowchart LR
%% Project Build & Infrastructure
subgraph "Project Build & Infrastructure"
gradleWrapper("Gradle Wrapper & Plugins"):::buildInfra
CI("CI Workflows"):::buildInfra
templates("Gradle Templates"):::buildInfra
end
%% Core Utility Layer
subgraph "Core Utility Layer"
common("common"):::core
colors("colors"):::core
safe_wrapper("safe_wrapper"):::core
resources("resources"):::core
end
%% Feature-Specific Modules
subgraph "Feature-Specific Modules"
crypto("crypto"):::feature
mime_types("mime_types"):::feature
language_codes("language_codes"):::feature
matrix("matrix"):::feature
selector("selector"):::feature
transactions("transactions"):::feature
end
%% Asynchronous Helpers
subgraph "Asynchronous Helpers"
coroutines("coroutines"):::async
compose("coroutines/compose"):::async
end
%% Serialization Helpers
subgraph "Serialization Helpers"
base64("serialization/base64"):::serialization
encapsulator("serialization/encapsulator"):::serialization
mapper("serialization/mapper"):::serialization
typed_serializer("serialization/typed_serializer"):::serialization
end
%% Repository Abstractions
subgraph "Repository Abstractions"
repos_common("repos/common (API)"):::repos
repos_inmemory("repos/inmemory"):::repos
repos_cache("repos/cache"):::repos
repos_exposed("repos/exposed"):::repos
repos_ktor_client("repos/ktor/client"):::repos
repos_ktor_common("repos/ktor/common"):::repos
repos_ktor_server("repos/ktor/server"):::repos
end
%% Ktor Extensions
subgraph "Ktor Extensions"
ktor_common("ktor/common"):::ktor
ktor_client("ktor/client"):::ktor
ktor_server("ktor/server"):::ktor
end
%% Dependency Injection (Koin)
subgraph "Dependency Injection (Koin)"
koin_api("koin/src"):::di
koin_generator("koin/generator"):::di
end
%% KSP Code-Generation Modules
subgraph "KSP Code-Generation Modules"
ksp_classcasts("ksp/classcasts"):::ksp
ksp_sealed("ksp/sealed"):::ksp
ksp_variations("ksp/variations"):::ksp
ksp_generator("ksp/generator"):::ksp
end
%% Android UI Wrappers
subgraph "Android UI Wrappers"
alerts("android/alerts"):::android
pickers("android/pickers"):::android
recyclerview("android/recyclerview"):::android
smalltextfield("android/smalltextfield"):::android
end
%% Startup Plugins & Templates
subgraph "Startup Plugins & Templates"
startup_plugin("startup/plugin"):::startup
startup_launcher("startup/launcher"):::startup
startup_template("startup/template"):::startup
end
%% Dependencies Arrows
common -->|feeds into| crypto
common -->|feeds into| mime_types
common -->|feeds into| language_codes
common -->|feeds into| matrix
common -->|feeds into| selector
common -->|feeds into| transactions
common -->|feeds into| coroutines
coroutines -->|extends| compose
common -->|feeds into| base64
common -->|feeds into| encapsulator
common -->|feeds into| mapper
common -->|feeds into| typed_serializer
common -->|feeds into| repos_common
repos_common -->|implemented by| repos_inmemory
repos_common -->|implemented by| repos_cache
repos_common -->|implemented by| repos_exposed
repos_common -->|implemented by| repos_ktor_client
repos_common -->|implemented by| repos_ktor_common
repos_common -->|implemented by| repos_ktor_server
ktor_common -->|used by| ktor_client
ktor_common -->|used by| ktor_server
ksp_generator -->|used by| koin_generator
ksp_generator -->|used by| ksp_classcasts
ksp_generator -->|used by| ksp_sealed
ksp_generator -->|used by| ksp_variations
common -->|feeds into| alerts
common -->|feeds into| pickers
common -->|feeds into| recyclerview
common -->|feeds into| smalltextfield
%% Click Events
click templates "https://github.com/insanusmokrassar/microutils/tree/master/gradle/templates/"
click common "https://github.com/insanusmokrassar/microutils/tree/master/common/"
click colors "https://github.com/insanusmokrassar/microutils/tree/master/colors/"
click safe_wrapper "https://github.com/insanusmokrassar/microutils/tree/master/safe_wrapper/"
click resources "https://github.com/insanusmokrassar/microutils/tree/master/resources/"
click crypto "https://github.com/insanusmokrassar/microutils/tree/master/crypto/"
click mime_types "https://github.com/insanusmokrassar/microutils/tree/master/mime_types/"
click language_codes "https://github.com/insanusmokrassar/microutils/tree/master/language_codes/"
click matrix "https://github.com/insanusmokrassar/microutils/tree/master/matrix/"
click selector "https://github.com/insanusmokrassar/microutils/tree/master/selector/"
click transactions "https://github.com/insanusmokrassar/microutils/tree/master/transactions/"
click coroutines "https://github.com/insanusmokrassar/microutils/tree/master/coroutines/"
click compose "https://github.com/insanusmokrassar/microutils/tree/master/coroutines/compose/"
click base64 "https://github.com/insanusmokrassar/microutils/tree/master/serialization/base64/"
click encapsulator "https://github.com/insanusmokrassar/microutils/tree/master/serialization/encapsulator/"
click mapper "https://github.com/insanusmokrassar/microutils/tree/master/serialization/mapper/"
click typed_serializer "https://github.com/insanusmokrassar/microutils/tree/master/serialization/typed_serializer/"
click repos_common "https://github.com/insanusmokrassar/microutils/tree/master/repos/common/"
click repos_inmemory "https://github.com/insanusmokrassar/microutils/tree/master/repos/inmemory/"
click repos_cache "https://github.com/insanusmokrassar/microutils/tree/master/repos/cache/"
click repos_exposed "https://github.com/insanusmokrassar/microutils/tree/master/repos/exposed/"
click repos_ktor_client "https://github.com/insanusmokrassar/microutils/tree/master/repos/ktor/client/"
click repos_ktor_common "https://github.com/insanusmokrassar/microutils/tree/master/repos/ktor/common/"
click repos_ktor_server "https://github.com/insanusmokrassar/microutils/tree/master/repos/ktor/server/"
click koin_api "https://github.com/insanusmokrassar/microutils/tree/master/koin/src/"
click koin_generator "https://github.com/insanusmokrassar/microutils/tree/master/koin/generator/"
click ksp_classcasts "https://github.com/insanusmokrassar/microutils/tree/master/ksp/classcasts/"
click ksp_sealed "https://github.com/insanusmokrassar/microutils/tree/master/ksp/sealed/"
click ksp_variations "https://github.com/insanusmokrassar/microutils/tree/master/ksp/variations/"
click ksp_generator "https://github.com/insanusmokrassar/microutils/tree/master/ksp/generator/"
click alerts "https://github.com/insanusmokrassar/microutils/tree/master/android/alerts/"
click pickers "https://github.com/insanusmokrassar/microutils/tree/master/android/pickers/"
click recyclerview "https://github.com/insanusmokrassar/microutils/tree/master/android/recyclerview/"
click smalltextfield "https://github.com/insanusmokrassar/microutils/tree/master/android/smalltextfield/"
click startup_plugin "https://github.com/insanusmokrassar/microutils/tree/master/startup/plugin/"
click startup_launcher "https://github.com/insanusmokrassar/microutils/tree/master/startup/launcher/"
click startup_template "https://github.com/insanusmokrassar/microutils/tree/master/startup/template/"
%% Styles
%% classDef buildInfra fill:#eee,stroke:#666,stroke-width:1px;
%% classDef core fill:#cce5ff,stroke:#004085,stroke-width:1px;
%% classDef feature fill:#e2e3e5,stroke:#636f83,stroke-width:1px;
%% classDef async fill:#d1ecf1,stroke:#0c5460,stroke-width:1px;
%% classDef serialization fill:#fff3cd,stroke:#856404,stroke-width:1px;
%% classDef repos fill:#d4edda,stroke:#155724,stroke-width:1px;
%% classDef ktor fill:#ffe5b4,stroke:#ff8c00,stroke-width:1px;
%% classDef di fill:#f5c6cb,stroke:#721c24,stroke-width:1px;
%% classDef ksp fill:#f8d7da,stroke:#721c24,stroke-width:1px;
%% classDef android fill:#e2e7ec,stroke:#1f2a36,stroke-width:1px;
%% classDef startup fill:#f0f3bd,stroke:#a2a04f,stroke-width:1px;
Generated with gitdiagram and edited then