The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
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[@]metanet.ch.
shiny.webawesome is primarily a generated wrapper
package, but it also includes a small set of package-level helpers for
common layout and page scaffolding tasks.
The two main layout helpers are:
webawesomePage(), which creates a minimal page scaffold
for Shiny apps using the packagewa_container(), which creates a plain container element
that is convenient for layouts and utility-class usageNeither helper is a generated wrapper for an upstream Web Awesome component. They are package-level conveniences that make it easier to build Shiny apps that use Web Awesome components and utilities.
webawesomePage()webawesomePage() creates a minimal full-page HTML
scaffold and attaches the shiny.webawesome dependency once
at page level.
This is useful because it keeps the page-level setup explicit and avoids relying on dependency attachment from an individual component deeper in the UI tree.
library(shiny.webawesome)
layout_preview <- wa_container(
class = "wa-stack",
wa_card("First card"),
wa_card("Second card")
)
cat(as.character(layout_preview), sep = "\n")## <div class="wa-stack">
## <wa-card>First card</wa-card>
## <wa-card>Second card</wa-card>
## </div>
Here is the same idea in a minimal full Shiny page scaffold:
library(shiny)
library(shiny.webawesome)
ui <- webawesomePage(
title = "Layout utilities",
wa_container(
style = "max-width: 32rem; margin: 2rem auto;",
wa_card("Hello from Web Awesome")
)
)
server <- function(input, output, session) {}
shinyApp(ui, server)webawesomePage() is especially useful when you want a
small, explicit page helper rather than composing your own
<html>, <head>, and
<body> scaffolding manually.
The page helper works naturally with generated components and package-level layout helpers together:
library(shiny)
library(shiny.webawesome)
ui <- webawesomePage(
title = "Page example",
wa_container(
class = "wa-stack",
style = "max-width: 32rem; margin: 2rem auto;",
wa_card("Top card"),
wa_button(
"primary_action",
"Continue",
appearance = "filled",
style = "width: 10rem;"
),
wa_card("Bottom card")
)
)
server <- function(input, output, session) {}
shinyApp(ui, server)wa_container()wa_container() creates a plain <div>
container and attaches the package dependency. It is useful when you
want layout structure or Web Awesome utility-class usage without
introducing a generated component wrapper solely to carry the
dependency.
Because it is a normal container helper, it pairs naturally with Web
Awesome layout and utility classes such as wa-grid,
wa-stack, wa-align-*, and
wa-justify-*, along with small layout groupings and inline
style adjustments.
library(shiny.webawesome)
wa_container(
class = "wa-stack",
wa_card("First card"),
wa_card("Second card")
)wa_container()Typical uses include:
library(shiny)
library(shiny.webawesome)
ui <- webawesomePage(
title = "Stacked layout",
wa_container(
class = "wa-stack",
style = "max-width: 32rem; margin: 2rem auto;",
wa_card("Profile"),
wa_card("Recent activity"),
wa_button(
"refresh",
"Refresh",
appearance = "outlined",
style = "width: 10rem;"
)
)
)
server <- function(input, output, session) {}
shinyApp(ui, server)library(shiny)
library(shiny.webawesome)
ui <- webawesomePage(
title = "Mixed layout",
wa_container(
class = "wa-cluster",
wa_badge("Beta"),
wa_tag("Preview")
),
wa_container(
class = "wa-stack",
style = "max-width: 32rem; margin: 2rem auto;",
wa_card("Main content"),
wa_card("Secondary content")
)
)
server <- function(input, output, session) {}
shinyApp(ui, server)Use webawesomePage() when you want the package to own
the full page scaffold.
Use wa_container() when you need a plain layout wrapper
inside a page or UI subtree.
For introductory context, start with the Getting Started with shiny.webawesome guide.
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.