doodle
From public sourcesA pure Kotlin UI framework for the Web and Desktop.
Overview
- framework
- gui
- javascript
- kotlin
- kotlin-js
- kotlin-jvm
- kotlin-multiplatform
- kotlin-wasm
- object-oriented
- ui
- ui-kit
- web
Installation
Commands are shown, never run by the marketplace. Check them against the official documentation.- Official websiteFrom public sourcesfrom catalog metadatanacular.github.io/doodle ↗
- Build from sourceFrom public sourcesfrom catalog metadata
Build from source: no validated build recipe — follow the repository instructions.
github.com/nacular/doodle ↗
Compatibility
Unknown means no evidence was found — not that the product is incompatible.| Platform | Status | Architecture | Evidence | Confidence |
|---|---|---|---|---|
| Web browser | Unknown | — | — | — |
| Server / self-hosted | Unknown | — | — | — |
| Container (OCI) | Unknown | — | — | — |
Releases
checked Oct 30, 2026Files in 0.12.0
This release has no attached files.
Release history
- v0.11.5Nov 26, 2025Official source ↗
- v0.11.4Aug 18, 2025Official source ↗
- v0.11.3Aug 17, 2025Official source ↗
- v0.11.2Aug 9, 2025Official source ↗
- v0.11.1Mar 30, 2025Official source ↗
- v0.11.0Mar 1, 2025Official source ↗
- v0.10.4Nov 29, 2024Official source ↗
Quality profile
algorithm quality-v1.0 · assessed Oct 16, 2026Score components
License
MITThis is the catalog policy status, not legal advice.
Sources
Reviews
No reviews yet.
Alternatives
README
From nacular/doodle · license MIT · fetched Oct 30, 2026[Kotlin 2.4.21] [JS Wasm, JVM] [Chat: on slack] [API] [License: MIT]
Doodle helps you create beautiful, modern apps entirely in Kotlin. Its render model is intuitive yet powerful, making it easy to achieve complex UIs with pixel level precision and layouts. This simplicity and power applies to everything from user input to drag and drop. Doodle lets you build and animate anything.
Start creating your app for Web and Desktop; just define your View hierarchy and business logic, and go.
https://github.com/nacular/doodle/assets/9815928/7340bb3c-b1c4-4a79-96ce-002d6f255e0b
Hello World
import io.nacular.doodle.application.Application
import io.nacular.doodle.application.application
import io.nacular.doodle.core.Display
import io.nacular.doodle.core.plusAssign
import io.nacular.doodle.core.view
import io.nacular.doodle.drawing.Color.Companion.Black
import io.nacular.doodle.drawing.text
import org.kodein.di.instance
class HelloWorld(display: Display): Application {
init {
display += view {
size = display.size
render = {
text("Hello, world!", color = Black)
}
}
}
override fun shutdown() {}
}
fun main() {
application {
HelloWorld(display = instance())
}
}
Examples and Documentation
Check out the documentation site for more details and examples. You can also find helpful tutorials at doodle-tutorials.
Doodle is still under active development, so there are going to be gaps and bugs. Please report issues, and submit feature requests.
You can also join the discussion on the #doodle Kotlin Slack channel. Go to http://slack.kotl.in for instructions on getting an invitation.
Leave a star
Let us know what you think by leaving a comment or a star ⭐️.