Skip to main content
Lumo UI provides a rich set of customizable components built with Kotlin Compose Multiplatform. Each component is designed with accessibility, theming, and ease of use in mind.

Available Components

Button

Interactive buttons with multiple variants and styles

TextField

Text input fields with filled and outlined variants

Checkbox

Checkboxes with tri-state support and custom colors

RadioButton

Radio buttons for single selection from multiple options

Switch

Toggle switches with smooth animations

Slider

Sliders and range sliders for value selection

OTPTextField

One-time password input fields with multiple variants

Getting Started

All components are available through the com.nomanr.lumo.ui.components package and follow consistent design patterns:
  • Theming: All components integrate with AppTheme for consistent styling
  • States: Support for enabled, disabled, error, and focused states
  • Customization: Colors, shapes, and styles can be customized via defaults objects
  • Accessibility: Built with semantic properties and interaction sources

Common Patterns

Most components follow these common patterns:
import com.nomanr.lumo.ui.components.*

@Composable
fun MyScreen() {
    AppTheme {
        // Components automatically inherit theme colors
        Button(
            text = "Click Me",
            onClick = { /* handle click */ }
        )
    }
}

Build docs developers (and LLMs) love