Skip to content

joreilly/ClimateTraceKMP

Repository files navigation

kotlin-version

Kotlin/Compose Multiplatform project to show climate related emission data from https://climatetrace.org/data. Development just started so very much work in progress right now! Have started with showing sector emission data per country but ton of other info available as well (ideas very welcome!).

Running on

  • iOS (SwiftUI + shared Compose Multiplatform UI)
  • Android
  • Desktop
  • Web (Wasm)
  • Web (Kotlin/JS) - contributed by https://github.com/yogeshVU
  • Kotlin Notebook
  • MCP Server

The iOS client as mentioned includes shared Compose Multiplatform UI code. It also includes option to use either SwiftUI or Compose code for the Country List screen (in both cases selecting a country will navigate to shared Compose emissions details screen).

Screenshot 2024-04-29 at 21 13 54

Related posts:

Android (Compose)

Screenshot_20231210_180223

iOS (SwiftUI/Compose)

Simulator Screenshot - iPhone 15 Pro - 2023-12-10 at 19 31 59

Compose for Desktop

Screenshot 2023-12-14 at 17 17 23

Compose for Web (Wasm)

Screenshot 2023-12-14 at 17 16 17

Compose for Web (Kotlin/JS)

Screenshot 2023-12-14 at 17 16 17

Kotlin Notebook

Screenshot 2023-12-14 at 20 33 45

MCP Server

The mcp-server module uses the Kotlin MCP SDK to expose an MCP tools endpoint (returning per country emission data) that can for example be plugged in to Claude Desktop as shown below. That module uses same KMP shared code.

Screenshot 2025-07-06 at 17 24 20

To integrate the MCP server with Claude Desktop for example you need to firstly run gradle shadowJar task and then select "Edit Config" under Developer Settings and add something like the following (update with your path)

{
  "mcpServers": {
    "kotlin-peopleinspace": {
      "command": "java",
      "args": [
        "-jar",
        "/Users/john.oreilly/github/ClimateTraceKMP/mcp-server/build/libs/serverAll.jar",
        "--stdio"
      ]
    }
  }
}

Full set of Kotlin Multiplatform/Compose/SwiftUI samples

Releases

No releases published

Packages

No packages published

Contributors 5