The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
{shinydashboardPlus}
has a new feature called the
skinSelector()
. This is a JavaScript based widget allowing
the end user to change the app skin. According to the
dashboardPage()
, there are 6 unique colors with 2 versions,
light or dark. Note that the dashboardControlbar()
is the
perfect place to host the skinSelector()
since it may be
seen as a secondary input (your app may still work without :))
library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
shinyApp(
ui = dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(),
controlbar = dashboardControlbar(collapsed = FALSE, skinSelector()),
title = "Skin Selector"
),
server = function(input, output) { }
)
The midnight theme is powered by the corresponding Github project. It provides a plug and play dark theme.
library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
shinyApp(
ui = dashboardPage(
skin = "midnight",
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(
title = "My box"
)
),
controlbar = dashboardControlbar(),
footer = dashboardFooter(),
title = "Midnight Skin"
),
server = function(input, output) { }
)
This is the fastest option to get a dark design. You’ll see below
that the {fresh}
package is able to provide a similar look
and feel, with much more options (but more effort).
To activate the material design feature, set md to TRUE in
dashboardPage()
. This feature is powered by MaterialAdminLTE,
built on top of AdminLTE2 and material
design for Bootstrap 3
!
library(shiny)
library(shinydashboard)
library(shinydashboardPlus)
shinyApp(
ui = dashboardPage(
md = TRUE,
skin = "blue",
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(title = "My box")
),
controlbar = dashboardControlbar(),
footer = dashboardFooter(),
title = "Material design"
),
server = function(input, output) { }
)
{fresh}
is developed by the dreamRs team.
It is built on top of {sass}
, which provides a solid R API to write SASS variables
and compile into CSS. {fresh}
captures most of the
AdminLTE2 (as well as AdminLTE3 for Bootstrap 4) SASS variables to allow
deep customization, hiding all the compilation burden under the
hood.
adminlte_color()
provides an interface to all available
AdminLTE colors and allow to overwrite the default. I strongly suggest
to avoid setting the default green to blue, as it might become
confusing. Instead, it is better to play with color palettes. Similarly,
adminlte_sidebar
allows to re-style the sidebar component.
The fresh theme below is based on some cyberpunk color palettes.
library(fresh)
# create the theme with a cyberpunk color palette
theme <- create_theme(
adminlte_color(
green = "#3fff2d",
blue = "#2635ff",
red = " #ff2b2b",
yellow = "#feff6e",
fuchsia = "#ff5bf8",
navy = "#374c92",
purple = "#615cbf",
maroon = "#b659c9",
light_blue = "#5691cc"
),
adminlte_sidebar(
dark_bg = "#D8DEE9",
dark_hover_bg = "#81A1C1",
dark_color = "#2E3440"
),
adminlte_global(
content_bg = "#aaaaaa"
)
)
# create tribble for box global config
box_config <- tibble::tribble(
~background, ~labelStatus,
"red", "warning",
"purple", "success",
"green", "primary",
"yellow", "danger",
"fuchsia", "info"
)
# box factory function
box_factory <- function(background, labelStatus) {
box(
title = "Cyberpunk Box",
collapsible = TRUE,
background = background,
height = "200px",
label = boxLabel(1, labelStatus)
)
}
# pmap magic
boxes <- purrr::pmap(box_config, box_factory)
shinyApp(
ui = dashboardPage(
freshTheme = theme,
skin = "blue",
options = list(sidebarExpandOnHover = TRUE),
header = dashboardHeader(
dropdownMenu(
type = "messages",
badgeStatus = "success",
messageItem(
from = "Support Team",
message = "This is the content of a message.",
time = "5 mins"
),
messageItem(
from = "Support Team",
message = "This is the content of another message.",
time = "2 hours"
)
)
),
sidebar = dashboardSidebar(
sidebarMenu(
menuItem("Item 1", badgeLabel = icon("heart"), badgeColor = "light-blue"),
menuItem("Item 2", badgeLabel = icon("poo"), badgeColor = "maroon")
)
),
body = dashboardBody(boxes),
controlbar = dashboardControlbar(),
title = "Fresh theming"
),
server = function(input, output) { }
)
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.