# jetbrains/compose-jb

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jetbrains-compose-jb).**

19,136 stars · 1,400 forks · Kotlin · Apache-2.0

## Links

- GitHub: https://github.com/JetBrains/compose-jb
- Homepage: https://jetbrains.com/lp/compose-multiplatform
- awesome-repositories: https://awesome-repositories.com/repository/jetbrains-compose-jb.md

## Description

This is a Kotlin Multiplatform UI framework for building consistent user interfaces across desktop, web, and mobile platforms using a single codebase. It functions as a declarative framework that enables the creation of shared UI components that run across multiple target environments.

The project includes a cross-platform desktop toolkit for managing native window features, system notifications, and hardware acceleration. For web targets, it provides a declarative interface library and a rendering engine that executes via WebAssembly to achieve high-performance execution in browsers.

The framework covers broad capability areas including desktop window management, hardware-accelerated graphics rendering, and the construction of web interfaces through the manipulation of HTML and CSS. It also provides mechanisms for native platform API integration, allowing shared code to access device hardware and embed native UI views.

## Tags

### User Interface & Experience

- [Cross-Platform UI Frameworks](https://awesome-repositories.com/f/user-interface-experience/cross-platform-ui-frameworks.md) — Provides a framework for building consistent graphical user interfaces that run across desktop, web, and mobile.
- [Cross-Platform Desktop Toolkits](https://awesome-repositories.com/f/user-interface-experience/cross-platform-desktop-toolkits.md) — Provides a set of tools for managing native windows and system notifications across desktop operating systems.
- [Declarative UI Paradigms](https://awesome-repositories.com/f/user-interface-experience/declarative-ui-paradigms.md) — Implements a programming model where the UI state is described and automatically reconciled.
- [UI State Recomposition](https://awesome-repositories.com/f/user-interface-experience/event-driven-state-managers/event-driven-state-synchronizers/ui-state-recomposition.md) — Tracks changes to observable state variables to trigger partial updates of the UI tree.
- [Cross-Platform UI Bridges](https://awesome-repositories.com/f/user-interface-experience/native-ui-bridges/cross-platform-ui-bridges.md) — Provides mechanisms to embed platform-native views within the shared UI hierarchy.
- [Declarative UI Libraries](https://awesome-repositories.com/f/user-interface-experience/declarative-ui-libraries.md) — Offers a toolkit for constructing web user interfaces using a declarative programming model.
- [Window Management Systems](https://awesome-repositories.com/f/user-interface-experience/window-management-systems.md) — Provides programmatic control over system menus, keyboard shortcuts, and application window states. ([source](https://github.com/jetbrains/compose-jb#readme))

### Graphics & Multimedia

- [Hardware-Accelerated Rendering](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/graphics-pipeline-architectures/hardware-accelerated-rendering.md) — Uses a GPU-accelerated graphics engine to render pixels directly for consistent cross-platform visuals.

### Mobile Development

- [Native API Bridges](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-platform-integrations/native-platform-access/native-api-bridges.md) — Provides interfaces for accessing platform-specific hardware features while maintaining a shared codebase.

### Operating Systems & Systems Programming

- [Desktop Application Development](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-application-development.md) — Enables the creation of hardware-accelerated desktop software with native window and notification management.

### Programming Languages & Runtimes

- [Multi-Target Compilers](https://awesome-repositories.com/f/programming-languages-runtimes/source-code-compilers/multi-target-compilers.md) — Compiles shared source code into multiple platform-specific binaries including JVM, JS, and WebAssembly.

### Software Engineering & Architecture

- [Multiplatform UI Libraries](https://awesome-repositories.com/f/software-engineering-architecture/cross-platform-development/multiplatform-code-sharing/multiplatform-ui-libraries.md) — Implements a shared UI framework enabling consistent rendering across multiple operating systems from a single codebase.
- [Component Slots](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/layering-presentation/application-layer-architectures/ui-architectures-patterns/component-slots.md) — Provides mechanisms for defining placeholders within components to allow flexible content injection.

### Web Development

- [Kotlin Web Frameworks](https://awesome-repositories.com/f/web-development/kotlin-web-frameworks.md) — Creates high-performance web interfaces using Kotlin through WebAssembly or HTML and CSS manipulation.
- [WebAssembly Frameworks](https://awesome-repositories.com/f/web-development/webassembly-frameworks.md) — Uses WebAssembly to execute high-performance UI logic and rendering in web browsers. ([source](https://github.com/jetbrains/compose-jb#readme))
- [UI Rendering Engines](https://awesome-repositories.com/f/web-development/webassembly-frameworks/ui-rendering-engines.md) — Provides a rendering engine that executes user interface code in browsers via WebAssembly.

### Part of an Awesome List

- [Web and HTML DSLs](https://awesome-repositories.com/f/awesome-lists/devtools/web-and-html-dsls.md) — Generates HTML and CSS for web interfaces using a declarative syntax. ([source](https://github.com/jetbrains/compose-jb#readme))
- [Desktop Development](https://awesome-repositories.com/f/awesome-lists/devtools/desktop-development.md) — Enables building cross-platform desktop and web applications.
