carbon-compose

Introduction: Carbon design system implementation with KMP and Compose Multiplatform
More: Author   ReportBugs   OfficialWebsite   
Tags:

Logo

Kotlin Compose Multiplatform

CI | compile & tests

A Compose Multiplatform implementation of IBM's Carbon Design System.

Supported platforms:

  • Android
  • iOS
  • Desktop
  • Web via Wasm

[!CAUTION] This library is still under development and unofficial. Contributions are welcomed!

Import library

To start using Carbon in your Compose app, add the dependency according to your dependencies declaration method:

Version catalog

[versions]
carbon = "x.x.x"

[libraries]
carbon-compose = { module = "io.github.gabrieldrn:carbon", version.ref = "carbon" }
dependencies {
    implementation(libs.carbon.compose)
}

KTS

dependencies {
    implementation("io.github.gabrieldrn:carbon:$version")
}

Groovy

dependencies {
    implementation "io.github.gabrieldrn:carbon:$version"
}

Use the latest version in the releases page.

Usage

Visit https://gabrieldrn.github.io/carbon-compose/getting-started/usage/ to learn how to use Carbon in your app.


🤳 Catalog App

For testing purposes, this project provides a catalog app for supported targets.

As this is a KMP project, please follow those steps to setup your environment accordingly.

Android 🤖

You can either run the app from the Android App run configuration in Android Studio, or compile an APK by executing the assemble task in a terminal:

./gradlew :catalog:assemble

iOS 

To run the iOS catalog app, open the Xcode project located in <git repo>/iosCatalog and run it (⌘R).

Desktop 🖥️

You can run the desktop version by executing the run Gradle task in a terminal:

./gradlew :catalog:run

Browser 🌐

You can access the web catalog app at https://gabrieldrn.github.io/carbon-compose/catalog/index.html.

Or you can run the web version locally by executing the wasmJsBrowserRun Gradle task in a terminal:

./gradlew :catalog:wasmJsBrowserRun

Documentation

Visit the project's Github Pages https://gabrieldrn.github.io/carbon-compose/ to get more information about the project, some documentation, its API reference and the catalog app.

Contributions

The project is open for contributions, have a look at the contribution guidelines and the issues list!

Support

Feel free to ⭐ the project and/or leave a tip if you like carbon-compose! 🙂


Content featuring carbon-compose:

As Seen In - jetc.dev Newsletter Issue #230

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools