Extensions can register custom screens that appear in Klyx’s navigation system. Screens are Jetpack Compose composables identified by a ScreenId.
ScreenRegistry
Register screens during onLoad() and unregister them in onUnload().
Register a screen
The ScreenId is a value class wrapping a string. By convention, use reverse-domain notation:
Unregister a screen
Set screen content
Replace an existing screen’s composable without unregistering:
Get screen content
Retrieve a registered screen’s composable:
Navigation
Use the Navigator service to navigate between destinations.
Navigate to a destination
Navigate back
Example from SamplePlugin
The SamplePlugin registers seven screens during onLoad():
Each screen is a Composable function that receives the services it needs as parameters. The toolbar actions navigate to these screens:
API reference
ScreenRegistry
Navigator
NavDestination
Last modified on July 11, 2026