
Modular utility suite offering core extensions, TaskRunner, MVI contracts with annotation-driven code generation, UI helpers, Compose bubble adapter, view bindings, rich-text and coroutine utilities.
Kotlin 基础工具库集合:纯 JVM 核心 + Android UI + Jetpack Compose 扩展 + KSP 代码生成。
| 模块 | 类型 | 内容 | Maven 坐标 |
|---|---|---|---|
:core |
纯 JVM |
BaseExtensions(orInit/ifTrue/cast/unsafeLazy/hex 等)、task(TaskRunner 重试/轮询任务执行器)、mvi(UiState/UiEffect/UiAction 契约) |
io.github.waxw:core |
:core-ui |
Android Library | View 扩展(dp/sp/圆角/多语言)、协程扩展(launchMain/launchIO 等)、TextView 富文本扩展、rv(Scaffold 列表)、viewbinding(BaseActivity/BaseFragment/BaseDialogFragment)、MviViewModel、应用内气泡(View)、Debuger(debug/release 变体) |
io.github.waxw:core-ui |
:core-compose |
Android Compose | ComposeBubble:复用 core-ui 气泡逻辑的 Compose 适配层 | io.github.waxw:core-compose |
:core-ksp |
JVM(KSP 处理器) | MVI 注解与代码生成(@DispatchAction/@DelegateDispatch) | io.github.waxw:core-ksp |
:core-compose 与使用 Compose 的模块需要应用 Compose 编译器插件并声明 Compose 依赖// settings.gradle.kts
include(":core", ":core-ui", ":core-compose", ":core-ksp")
// 模块 build.gradle.kts
implementation(project(":core"))
implementation(project(":core-ui"))
implementation(project(":core-compose"))
ksp(project(":core-ksp")) // MVI 代码生成(需应用 ksp 插件)implementation("io.github.waxw:core:0.0.5")
implementation("io.github.waxw:core-ui:0.0.5")
implementation("io.github.waxw:core-compose:0.0.5")
ksp("io.github.waxw:core-ksp:0.0.5")Compose 注意:
:core-compose的 Compose 依赖是implementation作用域, 调用方需自行应用org.jetbrains.kotlin.plugin.compose并声明 compose BOM 与所需依赖。
com.miyako.core.bubble)com.miyako.compose.bubble)版本策略统一在根目录 gav.gradle.kts(0.0.5):
0.0.5-<commit 短哈希>-<时间戳>,如 0.0.5-f3922df-20260818123000
0.0.5,满足任一条件触发:
./gradlew publish -Prelease=trueRELEASE=true
0.0.5 或 v0.0.5
# 发布到本地 Maven 仓库(开发版)
./gradlew :core:publishToMavenLocal :core-ui:publishToMavenLocal \
:core-compose:publishToMavenLocal :core-ksp:publishToMavenLocal
# 发布到 Maven Central(vanniktech 插件,自动签名;需先满足正式版条件)
./gradlew publish -Prelease=trueapp 模块的 MainActivity 演示了气泡(View + Compose)与各扩展用法,可作参考。
Kotlin 基础工具库集合:纯 JVM 核心 + Android UI + Jetpack Compose 扩展 + KSP 代码生成。
| 模块 | 类型 | 内容 | Maven 坐标 |
|---|---|---|---|
:core |
纯 JVM |
BaseExtensions(orInit/ifTrue/cast/unsafeLazy/hex 等)、task(TaskRunner 重试/轮询任务执行器)、mvi(UiState/UiEffect/UiAction 契约) |
io.github.waxw:core |
:core-ui |
Android Library | View 扩展(dp/sp/圆角/多语言)、协程扩展(launchMain/launchIO 等)、TextView 富文本扩展、rv(Scaffold 列表)、viewbinding(BaseActivity/BaseFragment/BaseDialogFragment)、MviViewModel、应用内气泡(View)、Debuger(debug/release 变体) |
io.github.waxw:core-ui |
:core-compose |
Android Compose | ComposeBubble:复用 core-ui 气泡逻辑的 Compose 适配层 | io.github.waxw:core-compose |
:core-ksp |
JVM(KSP 处理器) | MVI 注解与代码生成(@DispatchAction/@DelegateDispatch) | io.github.waxw:core-ksp |
:core-compose 与使用 Compose 的模块需要应用 Compose 编译器插件并声明 Compose 依赖// settings.gradle.kts
include(":core", ":core-ui", ":core-compose", ":core-ksp")
// 模块 build.gradle.kts
implementation(project(":core"))
implementation(project(":core-ui"))
implementation(project(":core-compose"))
ksp(project(":core-ksp")) // MVI 代码生成(需应用 ksp 插件)implementation("io.github.waxw:core:0.0.5")
implementation("io.github.waxw:core-ui:0.0.5")
implementation("io.github.waxw:core-compose:0.0.5")
ksp("io.github.waxw:core-ksp:0.0.5")Compose 注意:
:core-compose的 Compose 依赖是implementation作用域, 调用方需自行应用org.jetbrains.kotlin.plugin.compose并声明 compose BOM 与所需依赖。
com.miyako.core.bubble)com.miyako.compose.bubble)版本策略统一在根目录 gav.gradle.kts(0.0.5):
0.0.5-<commit 短哈希>-<时间戳>,如 0.0.5-f3922df-20260818123000
0.0.5,满足任一条件触发:
./gradlew publish -Prelease=trueRELEASE=true
0.0.5 或 v0.0.5
# 发布到本地 Maven 仓库(开发版)
./gradlew :core:publishToMavenLocal :core-ui:publishToMavenLocal \
:core-compose:publishToMavenLocal :core-ksp:publishToMavenLocal
# 发布到 Maven Central(vanniktech 插件,自动签名;需先满足正式版条件)
./gradlew publish -Prelease=trueapp 模块的 MainActivity 演示了气泡(View + Compose)与各扩展用法,可作参考。