jindong
1.1.0indexedDeclarative DSL for crafting haptic feedback patterns with simple timing and intensity primitives; integrates with reactive state and effects, enabling expressive, composable vibration sequences.
Declarative DSL for crafting haptic feedback patterns with simple timing and intensity primitives; integrates with reactive state and effects, enabling expressive, composable vibration sequences.
Declarative Haptic Feedback Library for Compose Multiplatform
Jindong provides a declarative DSL for haptic feedback in Compose Multiplatform applications(supports Android and iOS). Built on Compose Runtime, it lets you define complex haptic patterns with a simple, intuitive API.
Jindong[tɕindooŋ] (진동) is the Korean word for "vibration". We chose this name to reflect the library's core purpose, as it's a familiar term for the Korean creators of this library.
Jindong(trigger) {
Haptic(100.ms)
Delay(50.ms)
Haptic(50.ms, HapticIntensity.STRONG)
}
Add Jindong to your build.gradle.kts:
kotlin {
sourceSets {
commonMain.dependencies {
implementation("io.github.compose-jindong:jindong-core:<version>")
implementation("io.github.compose-jindong:jindong-compose:<version>")
}
}
}
| Platform | Minimum Version |
|---|---|
| Android | API 26 |
| iOS | iOS 13 |
Add the vibration permission to your AndroidManifest.xml:
<uses-permission android:name="android.permission.VIBRATE" />
@Composable
fun App() {
var count by remember { mutableStateOf(0) }
JindongProvider {
Jindong(count) {
Haptic(100.ms)
}
Button(onClick = { count++ }) {
Text("Tap me!")
}
}
}
For full documentation, visit compose-jindong.github.io/jindong.
Copyright 2026 compose-jindong
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance the License.
You may obtain a copy of the License at
http:
Unless applicable law agreed to writing, software
distributed under the License distributed an BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express implied.
See the License the specific language governing permissions
limitations under the License.
Surfaced from shared tags and platforms — no rankings paid for.