This commit is contained in:
2022-01-14 21:16:37 +01:00
parent ed7751b3a8
commit 7c6fe187d6
114 changed files with 1020454 additions and 0 deletions

65
dev/01_start.R Executable file
View File

@@ -0,0 +1,65 @@
# Building a Prod-Ready, Robust Shiny Application.
#
# README: each step of the dev files is optional, and you don't have to
# fill every dev scripts before getting started.
# 01_start.R should be filled at start.
# 02_dev.R should be used to keep track of your development during the project.
# 03_deploy.R should be used once you need to deploy your app.
#
#
########################################
#### CURRENT FILE: ON START SCRIPT #####
########################################
## Fill the DESCRIPTION ----
## Add meta data about your application
##
## /!\ Note: if you want to change the name of your app during development,
## either re-run this function, call golem::set_golem_name(), or don't forget
## to change the name in the app_sys() function in app_config.R /!\
##
golem::fill_desc(
pkg_name = "aquacollect", # The Name of the package containing the App
pkg_title = "AquaCollect", # The Title of the package containing the App
pkg_description = "Exploratory Analysis of Aqualectra Open Items.", # The Description of the package containing the App
author_first_name = "Asiatv", # Your First Name
author_last_name = "Sen", # Your Last Name
author_email = "asitav.sen@lanubia.com", # Your Email
repo_url = NULL # The URL of the GitHub Repo (optional)
)
## Set {golem} options ----
golem::set_golem_options()
## Create Common Files ----
## See ?usethis for more information
#usethis::use_mit_license( "Golem User" ) # You can set another license here
#usethis::use_readme_rmd( open = FALSE )
#usethis::use_code_of_conduct()
usethis::use_lifecycle_badge( "Experimental" )
#usethis::use_news_md( open = FALSE )
## Use git ----
#usethis::use_git()
## Init Testing Infrastructure ----
## Create a template for tests
#golem::use_recommended_tests()
## Use Recommended Packages ----
#golem::use_recommended_deps()
## Favicon ----
# If you want to change the favicon (default is golem's one)
#golem::use_favicon() # path = "path/to/ico". Can be an online file.
golem::remove_favicon()
## Add helper functions ----
#golem::use_utils_ui()
#golem::use_utils_server()
# You're now set! ----
# go to dev/02_dev.R
rstudioapi::navigateToFile( "dev/02_dev.R" )

110
dev/02_dev.R Executable file
View File

@@ -0,0 +1,110 @@
# Building a Prod-Ready, Robust Shiny Application.
#
# README: each step of the dev files is optional, and you don't have to
# fill every dev scripts before getting started.
# 01_start.R should be filled at start.
# 02_dev.R should be used to keep track of your development during the project.
# 03_deploy.R should be used once you need to deploy your app.
#
#
###################################
#### CURRENT FILE: DEV SCRIPT #####
###################################
# Engineering
## Dependencies ----
## Add one line by package you want to add as dependency
usethis::use_package( "plotly" )
usethis::use_package( "DT" )
usethis::use_package( "dplyr" )
usethis::use_package( "fst" )
usethis::use_package( "ggplot2" )
usethis::use_package( "shinydashboard" )
usethis::use_package( "scales" )
usethis::use_package( "shinycssloaders" )
usethis::use_package( "bslib" )
## Add modules ----
## Create a module infrastructure in R/
golem::add_module( name = "barplot" ) # Name of the module
golem::add_module( name = "inbox" ) # Name of the module
golem::add_module( name = "dccb" ) # Name of the module
golem::add_module( name = "tab" ) # Name of the module
golem::add_module( name = "downbutt" ) # Name of the module
golem::add_module( name = "stackedbarplot" )
## Add helper functions ----
## Creates fct_* and utils_*
golem::add_fct( "helpers" )
#golem::add_utils( "helpers" )
## External resources
## Creates .js and .css files at inst/app/www
# golem::add_js_file( "script" )
# golem::add_js_handler( "handlers" )
# golem::add_css_file( "custom" )
## Add internal datasets ----
## If you have data in your package
#usethis::use_data_raw( name = "oi", open = FALSE )
#usethis::use_data_raw( name = "dunn", open = FALSE )
## Tests ----
## Add one line by test you want to create
#usethis::use_test( "app" )
# Documentation
## Vignette ----
#usethis::use_vignette("aquacollect")
#devtools::build_vignettes()
## Code Coverage----
## Set the code coverage service ("codecov" or "coveralls")
#usethis::use_coverage()
# Create a summary readme for the testthat subdirectory
#covrpage::covrpage()
## CI ----
## Use this part of the script if you need to set up a CI
## service for your application
##
## (You'll need GitHub there)
#usethis::use_github()
# GitHub Actions
#usethis::use_github_action()
# Chose one of the three
# See https://usethis.r-lib.org/reference/use_github_action.html
#usethis::use_github_action_check_release()
#usethis::use_github_action_check_standard()
#usethis::use_github_action_check_full()
# Add action for PR
#usethis::use_github_action_pr_commands()
# Travis CI
#usethis::use_travis()
#usethis::use_travis_badge()
# AppVeyor
#usethis::use_appveyor()
#usethis::use_appveyor_badge()
# Circle CI
#usethis::use_circleci()
#usethis::use_circleci_badge()
# Jenkins
#usethis::use_jenkins()
# GitLab CI
#usethis::use_gitlab_ci()
# You're now set! ----
# go to dev/03_deploy.R
rstudioapi::navigateToFile("dev/03_deploy.R")

42
dev/03_deploy.R Executable file
View File

@@ -0,0 +1,42 @@
# Building a Prod-Ready, Robust Shiny Application.
#
# README: each step of the dev files is optional, and you don't have to
# fill every dev scripts before getting started.
# 01_start.R should be filled at start.
# 02_dev.R should be used to keep track of your development during the project.
# 03_deploy.R should be used once you need to deploy your app.
#
#
######################################
#### CURRENT FILE: DEPLOY SCRIPT #####
######################################
# Test your app
## Run checks ----
## Check the package before sending to prod
devtools::check()
rhub::check_for_cran()
# Deploy
## Local, CRAN or Package Manager ----
## This will build a tar.gz that can be installed locally,
## sent to CRAN, or to a package manager
devtools::build()
## RStudio ----
## If you want to deploy on RStudio related platforms
golem::add_rstudioconnect_file()
golem::add_shinyappsio_file()
golem::add_shinyserver_file()
## Docker ----
## If you want to deploy via a generic Dockerfile
golem::add_dockerfile()
## If you want to deploy to ShinyProxy
golem::add_dockerfile_shinyproxy()
## If you want to deploy to Heroku
golem::add_dockerfile_heroku()

12
dev/run_dev.R Executable file
View File

@@ -0,0 +1,12 @@
# Set options here
options(golem.app.prod = FALSE) # TRUE = production mode, FALSE = development mode
# Detach all loaded packages and clean your environment
golem::detach_all_attached()
# rm(list=ls(all.names = TRUE))
# Document and reload your package
golem::document_and_reload()
# Run the application
run_app()