Liquid
Glass themes for Shiny.
glass_theme() returns a bslib theme with translucent
surfaces, backdrop blur, and system typography. Pass it as
theme = glass_theme() to fluidPage(),
navbarPage(), or other page functions that accept a bslib
theme.
# install.packages("remotes")
remotes::install_github("ericrayanderson/shinyglass")
library(shiny)
library(shinyglass)
ui <- fluidPage(
theme = glass_theme(), # or glass_theme(preset = "dark")
titlePanel("Liquid Glass"),
sliderInput("n", "Bars", 5, 30, 15),
plotOutput("plot")
)
server <- function(input, output, session) {
output$plot <- renderPlot(barplot(seq_len(input$n), col = "#007AFF", border = NA))
}
shinyApp(ui, server)Package under python/
(not on CRAN). Shares inst/scss + inst/js;
wheels vendor precompiled CSS so default themes need no
libsass at runtime.
cd python
pip install -e ".[dev,theme]"
python scripts/vendor_assets.py # → src/shinyglass/static/
shiny run examples/app_sidebar.pyfrom shiny import App, ui
from shinyglass import glass_theme
app_ui = ui.page_sidebar(
ui.sidebar("Filters"),
ui.card("Hello glass"),
theme=glass_theme(preset="light"),
)
app = App(app_ui, None)See python/README.md
for wheel builds and CI isolation tests.