bs4Dashkit

Structured theming and navigation utilities for {bs4Dash} applications.

bs4Dashkit provides:


Installation

# Development version
remotes::install_github("PrigasG/bs4Dashkit")

Quick Start

library(shiny)
library(bs4Dash)
library(bs4Dashkit)

ttl <- dash_titles(
  brand_text = "OLTCR Dashboards",
  icon = "project-diagram"
)

ui <- bs4DashPage(
  title = ttl$app_name,
  header = bs4DashNavbar(title = ttl$brand),
  sidebar = bs4DashSidebar(
    bs4SidebarMenu(
      bs4SidebarMenuItem("Dashboard", tabName = "dash")
    )
  ),
  body = bs4DashBody(
    use_bs4Dashkit_core(ttl),
    bs4TabItems(
      bs4TabItem(
        tabName = "dash",
        h2("Hello Dashboard")
      )
    )
  )
)

server <- function(input, output, session) {}
shinyApp(ui, server)

Key Features

Fully configurable for collapsed and expanded states.

Theme System

CSS variable-driven theming:

use_dash_theme(accent = "#2f6f8f")

Prebuilt components:

Server-side wiring example:

observeEvent(input$refresh, session$reload())

Documentation

Full documentation and examples are available at:

https://prigasg.github.io/bs4Dashkit/


License

MIT

Full Example App

A complete working example (brand, sidebar modes, hover expand, theme preset, navbar tools, footer) is included in the documentation site: