一款开源、无广告的极简课程表应用,支持从教务系统导入课程数据。
joreilly/ClimateTraceKMP
Kotlin/Compose Multiplatform 跨平台示例,展示 Climate TRACE 排放数据
- Star
- 346
- Fork
- 23
- 未关闭 Issue
- 8
- 最近提交
- 5天前
这是什么?
ClimateTraceKMP 是一个 Kotlin/Compose Multiplatform 示例项目,用于展示 climatetrace.org 的各国温室气体排放数据。共享的 composeApp 模块承载数据层、view model 和 Compose Multiplatform UI,Android、iOS、桌面以及 Web(Wasm) 客户端都复用它。iOS 端由 SwiftUI 承载,国家列表页可以选用 SwiftUI 或 Compose 实现,选中国家后进入共享的 Compose 排放详情页;项目还附带一个 Kotlin Notebook。
除 UI 客户端外,项目还把数据封装成可供程序调用的形式。mcp-server 模块基于 Kotlin MCP SDK,将各国排放数据暴露为 MCP 工具,可接入 Claude Desktop 等客户端。agents 模块中的 Agent 使用 Google ADK for Kotlin 构建,作为 MCP 客户端通过 Streamable HTTP 连接 mcp-server 获取工具数据;应用内的 Agents 页面基于 Koog,可通过 LLM 查询排放数据。
其他依赖包括 Ktor、Koin、KStore、Voyager 和 KoalaPlot。各目标平台通过 Gradle 任务构建,Android 与 iOS 客户端共用一套 Maestro UI 测试流程,并在 CI 的模拟器上运行。
核心功能
- 01共享的 Kotlin 数据层、view model 与 Compose Multiplatform UI,供 Android、iOS、桌面和 Web(Wasm) 复用。
- 02iOS 应用由 SwiftUI 承载,国家列表页可选用 SwiftUI 或 Compose 实现。
- 03mcp-server 模块基于 Kotlin MCP SDK,把各国排放数据暴露为 MCP 工具,可接入 Claude Desktop。
- 04基于 Google ADK 的 Agent 以 MCP 客户端身份通过 Streamable HTTP 取数,应用内另有基于 Koog 的 Agents 页面。
- 05附带 Kotlin Notebook,可查看同一份排放数据。
- 06Android 与 iOS 共用一套 Maestro UI 测试流程,并在 CI 中运行。
适用场景
- 了解 KMP 项目如何在移动、桌面与 Web 之间共享数据层和 Compose UI。
- 通过 MCP 把气候排放数据接入 LLM 助手或 Agent。
- 用单一 Kotlin 代码库搭建多端客户端原型。
- 在 Notebook 中交互式查看各国排放数据。
快速上手
- 1
克隆仓库并打开项目目录
- 2
使用 Gradle 运行桌面版应用
./gradlew :composeApp:run - 3
在浏览器中运行 Web(Wasm)版应用
./gradlew :composeApp:wasmJsBrowserDevelopmentRun
使用前须知
- iOS 客户端需要使用 Xcode 才能构建和运行。
- AI 代理功能需要 Gemini API 密钥。
收录于专题
标签
常见问题
- ClimateTraceKMP 是什么?
- Kotlin/Compose Multiplatform 跨平台示例,展示 Climate TRACE 排放数据 ClimateTraceKMP 是一个 Kotlin/Compose Multiplatform 示例项目,用于展示 climatetrace.org 的各国温室气体排放数据。共享的 composeApp 模块承载数据层、view model 和 Compose Multiplatform UI,Android、iOS、桌面以及 Web(Wasm) 客户端都复用它。iOS 端由 SwiftUI 承载,国家列表页可以选用 SwiftUI 或 Compose 实现,选中国家后进入共享的 Compose 排放详情页;项目还附带一个 Kotlin Notebook。
- ClimateTraceKMP 可以免费使用吗?用的什么许可证?
- ClimateTraceKMP 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- ClimateTraceKMP 还在维护吗?
- 活跃维护中。ClimateTraceKMP 最近一次提交是在 2026年11月2日。
- ClimateTraceKMP 适合用来做什么?
- 了解 KMP 项目如何在移动、桌面与 Web 之间共享数据层和 Compose UI。 通过 MCP 把气候排放数据接入 LLM 助手或 Agent。 用单一 Kotlin 代码库搭建多端客户端原型。 在 Notebook 中交互式查看各国排放数据。
- ClimateTraceKMP 怎么安装和运行?
- 克隆仓库并打开项目目录 使用 Gradle 运行桌面版应用: ./gradlew :composeApp:run 在浏览器中运行 Web(Wasm)版应用: ./gradlew :composeApp:wasmJsBrowserDevelopmentRun
- 在哪里获取 ClimateTraceKMP?
- 源代码和安装说明在 GitHub 上:https://github.com/joreilly/ClimateTraceKMP
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
端到端加密的 Android 与 iOS 位置共享应用,支持私密群组、位置历史、隐私区域和地点提醒。
一款本地优先的故事写作编辑器,支持安卓、iOS、Windows、macOS 和 Linux,可选自建或官方同步服务。
一款跨平台应用商店,可发现并一键安装 GitHub、Codeberg 等 Forgejo/Gitea 平台上发布的开源软件。
面向 Kotlin 与 Kotlin Multiplatform 的轻量依赖注入框架,提供 Kotlin DSL 与 JSR-330 注解两种写法。
面向 Android 与 Compose Multiplatform 的高度可定制日历库,支持周、月、年及热力图视图。