Composites

Introduction: ✨ Composites are a group of tools and handy libraries that make it easier to use Jetpack Compose.
More: Author   ReportBugs   
Tags:

Kotlin Version Compose Multiplatform Version GitHub license

API Publish status

✨ Composites are a collection of tools and handy libraries that make it easier to use Jetpack Compose.
Please consider giving this repository a star ⭐ if you like the project.

Articles

Modules

  • composites-carbon — Lightweight annotation processor for generating Route objects that help with navigation based on the Navigation Component
  • composites-fiberglass — A tool for building complex screens based on simple blocks.

Current versions

Module Version
composites-carbon-core Maven Central
composites-carbon-processor Maven Central
composites-fiberglass Maven Central

Using in your projects

Use the Kotlin DSL instructions for your module:

Configure dependency repositories in settings.gradle.kts:

dependencyResolutionManagement {
    repositories {
        google()
        mavenCentral()
    }
}

Snapshot builds

To use the development version, replace 0.6.0 with 0.7.0-SNAPSHOT in the module instructions, keeping Carbon core and processor on the same version. Add the Central Portal snapshot repository to the repositories above:

maven("https://central.sonatype.com/repository/maven-snapshots/") {
    content { includeGroup("ru.ldralighieri.composites") }
}

Snapshots are updated in place and may differ from a particular checkout.

Run App:

  • Android: use the androidApp run configuration
  • iOS: use the iosApp run configuration
  • Desktop: ./gradlew :app:desktopApp:run
  • Desktop Hot Reload: ./gradlew :app:desktopApp:hotRun
  • Web (WASM): ./gradlew :app:webApp:wasmJsBrowserDevelopmentRun
  • Web (JS): ./gradlew :app:webApp:jsBrowserDevelopmentRun (use this to test the JS target independently)

If you're finding performance issues

Make sure to try running your app or sample app in release mode.

Missed or forgot something?

If I forgot something or you have any ideas what can be added or corrected, please create an issue or contact me directly.

License

Copyright 2023-2025 Vladimir Raupov

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools
AI Daily Digest