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.

EZRShiny

EZRShiny helps you build multi-page ‘shiny’ apps that all look and work the same way, with far less code. Describe your app as a set of tabs, fill them with inputs and outputs, and EZRShiny builds the page: navigation bar, logos, app name, sidebars, tooltips and a dark mode switch.

library(EZRShiny)

ui <- UINav(
  appName = "My App",
  barColor = "#1F4E79",

  singleTab("Upload",
    navUpload("dataUpload", "Upload a CSV",
              tooltipText = "CSV files only"),
    navButton("runData", "Run")
  ),

  biLevelTab("Results",
    subSidebarTab("Table",
      sidebarElements = list(navDownload("tableDownload", "Download table")),
      navOutputTable("resultsTable")
    ),
    subTab("Plot",
      navOutputPlot("resultsPlot")
    )
  )
)

Installation

Once EZRShiny is on CRAN:

install.packages("EZRShiny")

Until then, install the latest version from GitHub:

# install.packages("remotes")
remotes::install_github("vari-bbc/EZRShiny")

This skips the “Getting started” guide by default. To install the guide too, so vignette("getting-started", package = "EZRShiny") works (this needs pandoc, which RStudio includes):

remotes::install_github("vari-bbc/EZRShiny", build_vignettes = TRUE)

Or install from a local copy of the folder:

# install.packages("devtools")
devtools::install("path/to/EZRShiny")

Getting started

Start a new app from the template:

EZRShiny::createEZApp("myApp", appName = "My App")
shiny::runApp("myApp")

Or open the example app, which explores who survived the Titanic and uses every kind of tab:

EZRShiny::runExampleApp()

Then read the guide, which covers the folder layout, every tab, input and output function, and the server helpers:

vignette("getting-started", package = "EZRShiny")

What’s included

Group Functions
Page UINav()
Top-level tabs singleTab(), sidebarLevelTab(), biLevelTab(), triLevelTab()
Sub tabs subTab(), subSidebarTab(), triSubTab(), triSubSidebarTab(), subTwoColPage()
Inputs navButton(), navSelect(), navUpload(), navDownload(), navCheckbox(), navText(), navNumeric(), navColor(), navDate(), navSpanText()
Outputs navOutputTable(), navOutputPlot(), navOutputPlotly(), navOutputGirafe(), navOutputPic(), sideNavOutputPic(), navOutputText()
Server activateItems(), deactivateItems(), showNavTabs(), hideNavTabs(), startSection(), endSection()
Files sourceFunctions(), createEZApp(), runExampleApp()

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.