bs4Dashkit 0.2.0
CRAN release: 2026-04-21
Ergonomics and discoverability
dash_titles()now accepts simpleshiny::icon()inputs in addition to character icon names, and emits a more targeted error whenicon=receives an unsupported object.Added sidebar brand text controls for collapsed and expanded states:
collapsed_text_size,expanded_text_size,collapsed_text_weight, andexpanded_text_weight.Added
bs4dashkit_theme_presets()to list shipped theme presets and improved unknown-preset errors to enumerate valid choices.Polished the built-in theme presets so they style navbar, sidebar, footer, link, and status colors more coherently, and extended
bs4dashkit_theme_presets(values = TRUE)to expose the shipped preset tokens for inspection and customization.Added
bs4dashkit_example_app()as a minimal runnable example of the recommendeddash_titles()+use_bs4Dashkit_core()workflow.Added
bs4dashkit_demo_app()plus a packagedinst/examples/real-shiny-app/app.Rexample for interactively testing sidebar brand states, hover-expand behavior, presets, navbar controls, and footer styling together. The packaged example now contains the full standalone app code directly.Added
inst/examples/sidebar-smoke-test/app.Ras a minimal sidebar verification app andinst/examples/test-all/app.Ras a heavier end-to-end stress test for branding, sidebar, navbar, theme, and footer features.Refined sidebar brand state handling so hover-expanded sidebars use the expanded text rules consistently,
brand_textis treated as the default expanded label, and icon-requested states fall back more gracefully when no icon is supplied.Fixed reactive sidebar mode updates by clearing stale collapsed/expanded body classes before applying the current mode and cleaning up old observers and hover listeners before installing new ones.
Fixed collapsed and expanded sidebar text sizing and weight controls so live updates consistently win over AdminLTE defaults, and centered the collapsed
"text-only"label layout.Allowed
brand_text = NULLfor fully icon-only brands when both sidebar states are"icon-only"and an icon or image brand is supplied, with a browser-title fallback warning whenapp_nameis omitted.Improved
dash_nav_title()centering so the title stays visually centered as the viewport and surrounding navbar content change, and added left/center/right alignment controls to the interactive demo.
Documentation and package polish
-
Updated README and vignettes to match the shipped API:
removed references to the non-existent
dash_nav_logout_button()aligned documentation with the current preset names
"professional","modern", and"dark-lite"clarified preset discoverability and the recommended body-level placement of
use_bs4Dashkit_core()clarified how
brand_text,collapsed_text, andexpanded_textinteract across collapsed, hover-expanded, and expanded sidebar statesdocumented the textless icon-only brand path, the automatic sidebar mirroring of
bs4DashNavbar(title = ttl$brand), and the shipped example apps for smoke testing and full feature testing
Testing
-
Expanded test coverage for:
icon normalization in
dash_titles()targeted validation errors for invalid icon objects
collapsed and expanded sidebar brand text styling controls
sidebar mode class resets and cleanup of reactive hover/state listeners
theme preset discovery and preset validation errors
the exported minimal example app helper
bs4Dashkit 0.1.0
CRAN release: 2026-03-10
Initial release
Added
dash_titles()as a unified constructor for brand and sidebar configuration. Returns$app_name,$brand, and$depsfor placement inbs4DashPage(),bs4DashNavbar(), andbs4DashBody().Added
use_bs4Dashkit_core()as the recommended entry point for injecting dependencies, applying a theme preset, and configuring sidebar behavior.-
Added theme support via CSS custom properties:
Presets:
"professional","modern", and"dark-lite"use_dash_theme()for direct CSS variable overridesuse_dash_theme_preset()for applying named presetsbs4dashkit_theme_presets()for inspecting available presets
-
Added configurable sidebar brand modes:
“icon-only”,
"icon-text", and"text-only"Independent configuration for collapsed and expanded states
Added use_dash_sidebar_behavior() for configurable collapsed width, expanded width, and topbar height.
Added
use_dash_sidebar_brand_divider()for optional brand/menu separation.Added brand visual effects (
"glow","shimmer","emboss") and two-color gradients viadash_titles().Added support for image-based brand icons via
icon_imgandicon_shape.-
Added navbar utilities:
Added
dash_footer()with independently positional logo and text elements.-
Added global options:
bs4Dashkit.sidebar.collapsedbs4Dashkit.sidebar.expandedbs4Dashkit.brand_dividerbs4Dashkit.theme_presetbs4Dashkit.accent
