• Stars
    star
    487
  • Rank 90,292 (Top 2 %)
  • Language
    JavaScript
  • License
    Other
  • Created over 5 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🕰️ Loading screens for Shiny

Loading screens for Shiny

R-CMD-check CRAN status

Website | Demo | Get Started | Cheat Sheet

The waiter lets you programmatically show and hide partial or full page loading screens with spinners or loading bars to keep your users patiently waiting as you load or compute fancy things.

Feature Waiter Waitress Hostess Attendant
Progress Bar ✔️ ✔️ ✔️ ✔️
Full Screen ✔️ ✔️ ✖️ ✖️
Works with waiter ✔️ ✖️ ✔️ ✔️
Spinner ✔️ ✖️ ✖️ ✖️
Updatable ✔️ ✖️ ✖️ ✔️
Notifications ✖️ ✔️ ✖️ ✖️

Examples

Below are simple examples of applications that use the package, consult the website for more.

Waiter

To use the waiter:

  1. Include useWaiter in your UI.
  2. Trigger waiter_show to show the waiting screen.
  3. Eventually trigger waiter_hide to hide the loading screen.
library(shiny)
library(waiter)

ui <- fluidPage(
  useWaiter(), # include dependencies
  actionButton("show", "Show loading for 3 seconds")
)

server <- function(input, output, session){

  observeEvent(input$show, {

    waiter_show( # show the waiter
      html = spin_fading_circles() # use a spinner
    )

    Sys.sleep(3) # do something that takes time
    
    waiter_hide() # hide the waiter
  })
  
}

shinyApp(ui, server)

The waiter includes more options to customise the spinner, the background, show the waiter on load, etc.

Waitress

To use the waitress:

  1. Include use_waitress in your UI.
  2. Initialise a waitress from the Waitress object with the new method.
  3. You must then call the start.
  4. On the waitress object use the increase method to increase the progress bar.
  5. Use the hide method when done.
library(shiny)
library(waiter)

ui <- fluidPage(
  useWaitress(),
  p("App content")
)

server <- function(input, output){

  # call the waitress
  waitress <- Waitress$
    new(theme = "overlay-percent")$
    start() # start

  for(i in 1:10){
    waitress$inc(10) # increase by 10%
    Sys.sleep(.3)
  }

  # hide when it's done
  waitress$close() 

}

shinyApp(ui, server)

There are more options to the waitress, you can have it overlay any element (such as the navbar), automagically increment it, etc.

Get it

You can install waiter from CRAN.

install.packages("waiter")

Or the development version from Github with:

install.packages("remotes")
remotes::install_github("JohnCoene/waiter")

Please note that the ‘waiter’ project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.

More Repositories

1

echarts4r

🐳 ECharts 5 for R
JavaScript
596
star
2

coronavirus

🦠 Novel Coronavirus (COVID-19) Tracker
R
321
star
3

cicerone

🏛️ Give tours of your Shiny apps
R
184
star
4

javascript-for-r

📚 JavaScript for R CRC Book
HTML
177
star
5

firebase

Google FIrebase for shiny
R
170
star
6

g2r

📈 Grammar of graphics for interactive visualisations
R
148
star
7

packer

webpack + npm + R = ❤️
R
140
star
8

grapher

✍️ Large interactive graphs
JavaScript
92
star
9

sever

🔪Good-looking problems: customise your Shiny disconnected screen and error messages
R
77
star
10

linne

🌊 Write CSS in R
R
77
star
11

sigmajs

Σ sigma.js for R
R
72
star
12

tippy

💬 Tippy.js for Shiny
R
70
star
13

scrollytell

Scrollytell with R
R
68
star
14

pushbar

🖥️ Off-canvas elements for Shiny
R
58
star
15

globe4r

🌎 Interactive globe visualisations
HTML
55
star
16

marker

🖊️ Dynamically Highlight Text in Shiny
R
54
star
17

marat

📜 Jekyll theme inspired by L'Ami du peuple
Ruby
54
star
18

chirp

🔬Visualise Twitter Interactions
HTML
50
star
19

graphTweets

📣 Visualise networks of Twitter interactions
R
46
star
20

echarts

🐳 echarts for R - htmlwidget
R
43
star
21

countup

⏱️ countup.js R htmlwidget
R
36
star
22

how-to-build-htmlwidgets

Material - How to build htmlwidgets workshop
HTML
35
star
23

charter

Chart.js for R
R
33
star
24

awn

Awesome notifications for shiny
R
26
star
25

bsutils

Utilities for Bootstrap 5
R
23
star
26

datamaps

📍 datamaps htmlwidget for R
R
22
star
27

sacred

📖 Sacred texts in R
R
21
star
28

nter

⌨️ Trigger shiny buttons with the enter key
R
21
star
29

shinyscroll

Scroll to an element in Shiny
R
21
star
30

titanicon

Titanic animated icons for Shiny and Rmarkdown.
R
21
star
31

horizonplot

Horizon Plot Time Series
R
21
star
32

twinetverse

💫 Easily install and load packages for Twitter network analysis and visualisation
R
20
star
33

g3r

3D, VR and AR Maps in R
JavaScript
19
star
34

npm

npm from R
R
19
star
35

echarts4r.maps

Maps for echarts4r
R
18
star
36

reactrend

react-trend for R based on reactR
R
17
star
37

echarts4rShiny

Demo of shiny working with echarts4r
R
15
star
38

reactslider

WIP reactslider for Shiny
R
15
star
39

typedjs

⌨️ typed.js R htmlwidgets
R
14
star
40

mjml

📨 Create responsive emails with R
R
13
star
41

youTubeDataR

▶️ Integrates R and the YouTube Data API
R
13
star
42

scrollyteller

Package 'verse for scrollytelling in Shiny
R
12
star
43

arframer

📦 Augmented Reality in R
R
12
star
44

aframer

📦 R wrapper to aframe
R
11
star
45

n3d

3D networks in R
R
11
star
46

yarn

yarn from R
R
11
star
47

gior

A Declarative 3D Globe Data Visualization
R
11
star
48

r-network-visualisation

Handy list of network visualisation libraries for R
11
star
49

echarts4r.assets

Assets for echarts4r
R
11
star
50

peity

Inline charts for R
R
10
star
51

textillate

📄 textillate.js for R
R
10
star
52

js-shiny

Example of using JavaScript to solve shiny dynamic input hell
JavaScript
10
star
53

fullscreen

Make Rmarkdown and Shiny apps fullscreen
R
10
star
54

shinytitle

Dynamically update shiny page title
JavaScript
10
star
55

billboard

📊 htmlwidget for billboard.js
R
10
star
56

headspace

Headspace.js for Shiny
R
9
star
57

shiny-endpoints

Dynamic endpoints in shiny
R
8
star
58

gdp-app

GDP app with globe4r
R
8
star
59

shticky

Euwww, shticky shtuff
R
8
star
60

h3inr

H3 bindings for R
R
6
star
61

parcel

Parcel for R
HTML
6
star
62

go-nettle

Basic Graph Layout
Go
5
star
63

golem-cmd

💡 A cli for golem
JavaScript
5
star
64

aforce

📦 3D Force-Directed Graph in R
R
5
star
65

r-ladies-tunis

R Ladies Tunis Workshop Resources
R
5
star
66

twinetbook

📘 twinetverse book
HTML
5
star
67

ericsson

Interact with erlang from R
R
4
star
68

trianglify

📐 htmlwidget for trianglify
R
4
star
69

JohnCoene

4
star
70

gkg

Google Knowledge Graph from R
R
4
star
71

gior-shiny

Shiny demo of the gior package
R
4
star
72

ytr

R Wrapper to the Youtube Analytics API
R
4
star
73

funplot

📉 Function Plot is a plotting library built on top of D3.js used to render functions with little configuration
R
4
star
74

base-gior

Setup to start building the gior package
R
3
star
75

go-graphtweets

graphTweets for golang
Go
3
star
76

egg

🥚 egg.js htmlwidget for R
R
3
star
77

cran

Cran Dependency Graph
R
3
star
78

progressBaR

🔚 ProgressBar.js htmlwidget
R
3
star
79

sigmajshiny

Sigma js for shiny
R
3
star
80

baffle

Baffle text
R
2
star
81

aphysics

📦 Physics for aframer
R
2
star
82

fbadsinsightsr

👍 fbAdsInsightsR is an R package that allows fetching data from the Facebook Ads Insights API.
R
2
star
83

rtable

Wrapper to the Airtable API
R
2
star
84

uvcharts

uvcharts htmlwidget for R
R
2
star
85

shiny-aframer

Shiny & aframer example
R
2
star
86

aenvironment

📦 Environment for aframer
R
2
star
87

go-ergo

Ergodicity Economics
Go
2
star
88

tweets2earth

🌎 Plot tweets on Google Earth
R
2
star
89

bananas

🍌 Wrapper to the 'MailChimp' API
R
2
star
90

chartist

📉 chartist htmlwidget for R
R
2
star
91

vrrr

Virtual Reality in R
R
2
star
92

go-sharedcount

Sharedcount API for Go
Go
1
star
93

wine

🍷 Wine on Social Media Dashboard
HTML
1
star
94

rodham

🤷‍♀️Fetch Hillary Rodham Clinton emails
R
1
star
95

apoint

📦 Points for aframer
JavaScript
1
star
96

acharts

📦 Make Virtual Reality Charts with R
R
1
star
97

parsely

🌿 R wrapper to the parse.ly API
R
1
star
98

livestream

📺 R Wrapper to the Livestream API
R
1
star
99

aextras

📦 Extras component for aframer
R
1
star
100

apath

📦 Path component for aframer
CSS
1
star