Tabs
Focused views without losing the surrounding context.
Structured navigation
Tabs divide related content into views while keeping their relationship visible.
The complete tab declaration stays in the component tree. Selection, keyboard navigation, SSR output, and panel lifecycle remain owned by the Tabs component.
Active panel
The default mode mounts only the selected panel and disposes it when another tab becomes active.
Project overview
A concise view for status, ownership, and the next important decision.
Preserved panel state
KeepMountedHidden keeps every panel alive and changes only its visibility.
Draft workspace
This counter remains intact while another tab is selected.
Interactions: 0
Preview workspace
Each mounted panel owns and disposes its own reactive state.
Interactions: 0
Contextual DSL
Tabs and their panels are declared together; render mode and selection remain reactive properties.
scala
tabs {
renderMode = RenderMode.KeepMountedHidden
selectedIndex = selectedTab
tab("Overview") {
text("Overview content") {}
}
tab("Settings") {
text("Settings content") {}
}
}