Every coachmark library I tried felt incomplete—not customizable enough for what I needed.

Screenshot-based overlays that feel disconnected. Solid scrims that hide the actual UI. Z-index battles that never end.

I saw the gap. So I built Lumen.

Notice how the FAB remains tappable through the overlay:

Lumen renders real transparent cutouts in Jetpack Compose. Your buttons pulse. Your animations play. Your UI breathes—all visible through the spotlight.

What Makes Lumen Different

Genuine Transparent Cutouts

No screenshots. No faking it. Lumen renders real transparent regions in its scrim overlay.

Five Cutout Shapes

Shape Use Case
Circle FABs, icon buttons
RoundedRect Cards, text fields
Squircle iOS-style, modern apps
Star Gamification, achievements
Rect Full-width elements

Six Highlight Animations

Pulse · Glow · Ripple · Shimmer · Bounce · None

Multi-Step Sequences

Build complete onboarding flows with progress indicators. Users navigate forward and back at their own pace.

Dialog Coordination

Lumen automatically dismisses coachmarks when dialogs appear—no awkward z-index battles.

The API

Three steps. That's it.

1. Create a controller

val controller = rememberCoachmarkController()

2. Tag your target

CoachmarkHost(controller = controller) {
    IconButton(
        onClick = { /* ... */ },
        modifier = Modifier.coachmarkTarget(controller, "settings")
    ) {
        Icon(Icons.Default.Settings, "Settings")
    }
}

3. Show the coachmark

controller.show(
    CoachmarkTarget(
        id = "settings",
        title = "Settings",
        description = "Customize your preferences here.",
        shape = CutoutShape.Circle(),
    )
)

What You Can Build

Single Spotlight Multi-Step Tours
Basic coachmark Multi-step sequence
Highlight a FAB with pulse animation Full onboarding with progress dots

The sample app includes 11 interactive demos covering animations, connectors, theming, LazyColumn support, and dialog coordination.

When choosing a first cosplay outfit, it is worth considering how details related to short cosplay wigs will affect the complete look. As fans study the source material, it is sensible to balance details related to character accuracy with care and storage needs. To review details related to long cosplay wigs before the event, women's cosplay costumes for men offers a useful starting point for practical preparation. Before the preparation is complete, a balanced view of details related to cosplay shoes can support both detail and comfort.

Get Started

implementation("io.github.aldefy:lumen:1.0.0-beta01")

Open source under Apache 2.0. Available on Maven Central.

GitHub · Docs · Sample App