⌂
›
Reference
›
Navigation and Feedback
Navigation and Feedback
Ruflet already includes enough navigation and feedback primitives to build multi-screen apps, nested shells, and polished transient UI flows.
Navigation primitives
Current navigation-oriented controls and patterns include:
viewpageletnavigation_barnavigation_bar_destinationnavigation_railnavigation_rail_destinationnavigation_drawernavigation_drawer_destinationtabstabtab_bartab_bar_viewpage_view
In practice Ruflet apps combine these with:
page.routepage.views- button click handlers that call navigation methods or swap views
App shell surfaces
Ruflet supports the main shell building blocks you would expect:
app_barcupertino_app_barbottom_app_bardrawerend_drawerfloating_action_button
Dialogs and sheets
The repo already uses both Material and Cupertino dialog patterns:
alert_dialogcupertino_alert_dialogbottom_sheetcupertino_bottom_sheetcupertino_action_sheet
And the page API includes:
page.show_dialog(control)page.pop_dialog
Feedback controls
These are already part of the available surface:
snack_barbannerprogress_barprogress_ringtooltipbadge
Tabs example
The shipped tabs.rb example combines tabbed content and a bottom navigation bar:
top_tabs = tabs(
expand: 1,
length: 3,
selected_index: 0,
content: column(
expand: true,
spacing: 0,
children: [
tab_bar(
tabs: [
tab(label: text(TOKPLACEHOLDER0TOKEN)),
tab(label: text(TOKPLACEHOLDER1TOKEN)),
tab(label: text(TOKPLACEHOLDER2TOKEN))
]
),
tab_bar_view(
expand: 1,
children: [
container(expand: true, content: text(TOKPLACEHOLDER3TOKEN)),
container(expand: true, content: text(TOKPLACEHOLDER4TOKEN)),
container(expand: true, content: text(TOKPLACEHOLDER5TOKEN))
]
)
]
)
)Where Ruflet Studio is especially useful
Ruflet Studio demonstrates:
- dialog presentation
- sheets and pickers
- top-level navigation
- bottom navigation
- route-aware detail pages
That makes it the best reference when you are building real app shells instead of isolated components.