| Title: | Create Dashboards with 'Tabler' and 'Shiny' |
|---|---|
| Description: | Provides functions to build interactive dashboards combining the 'Tabler UI Kit' with 'Shiny', making it easy to create professional-looking web applications. 'Tabler' is fully responsive and compatible with all modern browsers. Offers customizable layouts and components built with 'HTML5' and 'CSS3'. The underlying 'Tabler' (<https://github.com/tabler/tabler>) and 'Tabler Icons' (<https://github.com/tabler/tabler-icons>) were pre-built from source to eliminate the need for 'Node.js' and 'NPM' on package installation. |
| Authors: | Mauricio Vargas Sepulveda [aut, cre], Tabler [ctb, cph] (Tabler Dashboard) |
| Maintainer: | Mauricio Vargas Sepulveda <[email protected]> |
| License: | Apache License (>= 2) |
| Version: | 0.1.0 |
| Built: | 2026-06-05 08:13:34 UTC |
| Source: | https://github.com/pachadotdev/tabler |
Build a modern card component with optional header, body, and footer
Small helper to render the page pretitle element used by Tabler examples
Small helper to render the page title element used by Tabler examples
Create the full page body structure with optional header
Display a key metric or value prominently
Display an icon from Tabler Icons or other icon libraries
Display important messages to users
Create interactive buttons with Tabler styling
card(..., title = NULL, footer = NULL, status = NULL, class = NULL) pre_title(text) title(text) body(..., title_text = NULL, pretitle_text = NULL, header_actions = NULL) value_box(value, title, icon = NULL, color = "primary", width = 3) icon(name, library = "tabler", class = NULL) alert(..., type = "info", dismissible = FALSE, title = NULL) button( label, href = NULL, onclick = NULL, color = "primary", size = "md", outline = FALSE, icon = NULL, icon_right = FALSE, disabled = FALSE, block = FALSE, pill = FALSE, square = FALSE, loading = FALSE, class = NULL, type = "button", ... )card(..., title = NULL, footer = NULL, status = NULL, class = NULL) pre_title(text) title(text) body(..., title_text = NULL, pretitle_text = NULL, header_actions = NULL) value_box(value, title, icon = NULL, color = "primary", width = 3) icon(name, library = "tabler", class = NULL) alert(..., type = "info", dismissible = FALSE, title = NULL) button( label, href = NULL, onclick = NULL, color = "primary", size = "md", outline = FALSE, icon = NULL, icon_right = FALSE, disabled = FALSE, block = FALSE, pill = FALSE, square = FALSE, loading = FALSE, class = NULL, type = "button", ... )
... |
Additional HTML attributes |
title |
Alert title (optional) |
footer |
Card footer content (optional) |
status |
Card color status: "primary", "secondary", "success", "warning", "danger", etc. |
class |
Additional CSS classes |
text |
The title text to display |
title_text |
The main page title text (optional) |
pretitle_text |
The page pretitle text (optional) |
header_actions |
Additional elements to include in the header (e.g., action buttons) |
value |
Main value to display |
icon |
Icon to include |
color |
Button color theme |
width |
Column width (1-12) |
name |
Icon name |
library |
Icon library: "tabler", "bootstrap", "feather" |
type |
HTML button type attribute |
dismissible |
Whether alert can be dismissed |
label |
Button text |
href |
URL to link to (creates an anchor tag instead of button) |
onclick |
JavaScript to execute on click |
size |
Button size: "sm", "md", "lg" |
outline |
Use outline style |
icon_right |
Position icon on the right side |
disabled |
Whether the button is disabled |
block |
Make button full-width (block-level) |
pill |
Use pill-shaped button style |
square |
Use square button style |
loading |
Show loading spinner |
An HTML tag representing the card
An HTML tag representing the value box
An HTML tag representing the icon
An HTML tag representing the alert
An HTML tag representing the button
A dataset containing Tabler icon names and their categories.
iconsicons
A data frame with 6,019 rows and 3 variables:
The root category of the icon (e.g., "arrow/arrows", "brand", "device", etc.)
The full icon name (e.g., "arrow-up", "arrow-down", "circle-arrow-up", "circle-arrow-up-filled", etc.)
Logical indicating whether the icon is a filled or not.
Derived from the icons from https://github.com/tabler/tabler-icons
icons[grepl("paw", icons$icon), ]icons[grepl("paw", icons$icon), ]
Main function to create a complete dashboard page with Tabler theme
Helper to create a top navigation header. This replaces the previous top-navbar behavior when users passed a header-like component.
Footer for the dashboard
Container for navigation items in sidebar
Container for navigation items in horizontal layout
Individual navigation item for sidebar
Container for multiple tab panels in tabbed layouts
Individual tab panel content
page( title = NULL, navbar = NULL, body = NULL, footer = NULL, layout = "boxed", theme = "light", color = "blue", show_theme_button = FALSE ) topbar(title = NULL, brand_image = NULL, ...) footer(left = NULL, right = NULL) sidebar_menu(..., title = NULL) horizontal_menu(...) menu_item(text, tab_name = NULL, icon = NULL, href = NULL, badge = NULL) tab_items(...) tab_item(tab_name, ...)page( title = NULL, navbar = NULL, body = NULL, footer = NULL, layout = "boxed", theme = "light", color = "blue", show_theme_button = FALSE ) topbar(title = NULL, brand_image = NULL, ...) footer(left = NULL, right = NULL) sidebar_menu(..., title = NULL) horizontal_menu(...) menu_item(text, tab_name = NULL, icon = NULL, href = NULL, badge = NULL) tab_items(...) tab_item(tab_name, ...)
title |
Optional brand for the sidebar; either a string (text title) or a named list with elements 'text' and 'img' (URL/path) to render a brand image and title. Example: 'title = list(text = "My App", img = "logo.png")'. |
navbar |
Dashboard navbar/menu. Can be: - 'sidebar_menu()' for a vertical sidebar - 'horizontal_menu()' for a horizontal menu |
body |
Dashboard body content |
footer |
Dashboard footer (optional) |
layout |
Layout type: "boxed" |
theme |
Default theme: "light" (default) or "dark". |
color |
Color theme (optional): "blue" (default), "azure", "indigo", "purple", "pink", "red", "orange", "yellow", "lime", "green", "teal", "cyan". |
show_theme_button |
Whether to show the theme toggle buttons (default: 'FALSE'). |
brand_image |
URL or path to brand image |
... |
Content for this tab |
left |
Left-aligned content |
right |
Right-aligned content |
text |
Item text/label |
tab_name |
Unique identifier for the tab (must match menuItem tab_name) |
icon |
Icon name (optional) |
href |
Link URL (optional, alternative to tab_name) |
badge |
Badge text (optional) |
HTML tag with dependencies attached
An HTML tag representing the top header
An HTML tag representing the footer
An HTML tag representing the sidebar menu
An HTML tag representing the horizontal menu
An HTML tag representing the menu item
An HTML tag representing the tab items container
An HTML tag representing the tab item
ui <- page( title = "Combo Dashboard", layout = "combo", navbar = list( top = topbar(title = "My App"), side = sidebar_menu( menu_item("Dogs", icon = "dog"), menu_item("Cats", icon = "cat") ) ), body = body("Welcome to Tabler!") ) server <- function(input, output, session) {} # shinyApp(ui, server)ui <- page( title = "Combo Dashboard", layout = "combo", navbar = list( top = topbar(title = "My App"), side = sidebar_menu( menu_item("Dogs", icon = "dog"), menu_item("Cats", icon = "cat") ) ), body = body("Welcome to Tabler!") ) server <- function(input, output, session) {} # shinyApp(ui, server)
Helper to build a brand structure for 'sidebar_menu(title = ...)'.
sidebar_brand(text = NULL, img = NULL, href = "#")sidebar_brand(text = NULL, img = NULL, href = "#")
text |
Brand text/label |
img |
Optional image URL/path for brand logo |
href |
Optional link URL for the brand (defaults to "#") |
A named list suitable to pass to 'sidebar_menu(title = )'
sidebar_brand("My App", img = "logo.png")sidebar_brand("My App", img = "logo.png")