Documentation

Start here

Overview

Explore Composium, an in-app UI catalog and Storybook for Android Jetpack Compose.

Why Composium

Composium is intentionally flexible:

  • you can place ComposiumScreen() anywhere in your app;
  • supports any parameter type, including nullable types;
  • scenes are just Compose code;
  • KSP is recommended, but not required;
  • scenes can be flat or deeply grouped;
  • grouping depth is unlimited;
  • you can use the built-in theme toggle or fully own theme state yourself;
  • you can create project-local scene helpers for shared preview chrome;
  • you can describe parameters with automatic inference where possible and explicit options where needed.

The library is meant to help you explore UI, not constrain how you structure it.

Feature Overview

  • Storybook-style scene browser for Android Compose
  • Searchable scene list
  • Flat scenes and unlimited nested groups via group = "A/B/C"
  • Automatic scene discovery with KSP
  • Optional manual registration without KSP
  • Automatic scene thumbnail generation for the main catalog
  • Custom scene thumbnails via the thumbnail parameter
  • Scene card badges via the badge parameter
  • Runtime controls for scene parameters
  • Automatic controls for Boolean, String, enum, and sealed object hierarchies
  • Nullable parameter support with explicit null-state toggle
  • Custom names for selectable options
  • Custom ordering for auto-inferred sealed options
  • Built-in dark theme toggle
  • External theme ownership when you need full control
  • Preview system controls for dark theme, display size, font size, and RTL

Contributing

If you want to fix a bug, improve the API, or extend the library with new functionality, contributions are welcome.

Summary

Composium is a runtime scene browser for Compose that aims to stay out of your way:

  • use KSP when you want automatic discovery;
  • skip KSP when you want manual registration;
  • keep scenes flat or organize them into deep nested groups;
  • use automatic controls where possible and explicit options where needed;
  • choose the default top bar or compact floating scene tools and apply contentPadding where content must remain unobscured;
  • let Composium own theme state or plug it into your own;
  • create scene helper wrappers for shared preview chrome;
  • inspect components under different preview system settings.
Documentation follows the project README.Improve this page