This function populates a directory with files for a Shiny application.
shinyAppTemplate(path = NULL, examples = "default", dryrun = FALSE)
Path to create new shiny application template.
Either one of "default", "ask", "all", or any combination of "app", "rdir", "module", and "tests". In an interactive session, "default" falls back to "ask"; in a non-interactive session, "default" falls back to "all". With "ask", this function will prompt the user to select which template items will be added to the new app directory. With "all", all template items will be added to the app directory.
If TRUE
, don't actually write any files; just print out which
files would be written.
In an interactive R session, this function will, by default, prompt the user to select which components to add to the application. Choices are
1: All
2: app.R : Main application file
3: R/example.R : Helper file with R code
4: R/example-module.R : Example module
5: tests/testthat/ : Tests using the testthat and shinytest2 package
If option 1 is selected, the full example application including the following files and directories is created:
appdir/
|- app.R
|- R
| |- example-module.R
| `- example.R
`- tests
|- testthat.R
`- testthat
|- setup-shinytest2.R
|- test-examplemodule.R
|- test-server.R
|- test-shinytest2.R
`- test-sort.R
Some notes about these files:
app.R
is the main application file.
All files in the R/
subdirectory are automatically sourced when the
application is run.
R/example.R
and R/example-module.R
are automatically sourced when
the application is run. The first contains a function lexical_sort()
,
and the second contains code for module created by the
moduleServer()
function, which is used in the application.
tests/
contains various tests for the application. You may
choose to use or remove any of them. They can be executed by the
runTests()
function.
tests/testthat.R
is a test runner for test files in the
tests/testthat/
directory using the
shinytest2
package.
tests/testthat/setup-shinytest2.R
is setup file to source your ./R
folder into the testing environment.
tests/testthat/test-examplemodule.R
is a test for an application's module server function.
tests/testthat/test-server.R
is a test for the application's server code
tests/testthat/test-shinytest2.R
is a test that uses the
shinytest2 package to do
snapshot-based testing.
tests/testthat/test-sort.R
is a test for a supporting function in the R/
directory.