From 6baa8701b2ace4382674d6a18d904c74211c160a Mon Sep 17 00:00:00 2001 From: Quarto GHA Workflow Runner Date: Sun, 17 Sep 2023 02:00:00 +0000 Subject: [PATCH] Built site for gh-pages --- .nojekyll | 2 +- materials/d1-01-welcome/index.html | 4 +- materials/d1-02-structure/index.html | 115 ++++++++++++----------- materials/d1-9001-loadtesting/index.html | 2 +- schedule.html | 16 ++-- search.json | 9 +- sitemap.xml | 42 ++++----- units/d1-02-structure.html | 4 +- 8 files changed, 105 insertions(+), 89 deletions(-) diff --git a/.nojekyll b/.nojekyll index efad5a6..4e7c2c0 100644 --- a/.nojekyll +++ b/.nojekyll @@ -1 +1 @@ -f4105744 \ No newline at end of file +61705b62 \ No newline at end of file diff --git a/materials/d1-01-welcome/index.html b/materials/d1-01-welcome/index.html index dcb528a..4d5f37c 100644 --- a/materials/d1-01-welcome/index.html +++ b/materials/d1-01-welcome/index.html @@ -368,7 +368,7 @@

Workshop Policies

Meet the Team!

-
+
Eric Nantz @@ -376,7 +376,7 @@

Meet the Team!

-
+
Michael Thomas diff --git a/materials/d1-02-structure/index.html b/materials/d1-02-structure/index.html index d6e6ac0..3270d24 100644 --- a/materials/d1-02-structure/index.html +++ b/materials/d1-02-structure/index.html @@ -405,9 +405,9 @@

Application Structure

It’s Never Just Shiny

… at least for production-quality apps!

    -
  • External data sources
  • -
  • Connections to other execution backends
  • -
  • Additional R packages!
  • +
  • External data sources
  • +
  • Connections to other execution backends
  • +
  • Additional R packages!
@@ -461,30 +461,30 @@

Take Control with {renv}Create reproducible environments for your R projects.

    -
  • Next generation of {packrat}
  • -
  • Isolated package library from rest of your system
  • -
  • Transfer projects to different collaborators / platforms
  • -
  • Reproducible package installation
  • -
  • Easily create new projects or convert existing projects with RStudio or built-in functions.
  • +
  • Next generation of {packrat}
  • +
  • Isolated package library from rest of your system
  • +
  • Transfer projects to different collaborators / platforms
  • +
  • Reproducible package installation
  • +
  • Easily create new projects or convert existing projects with RStudio or built-in functions.

Under the Hood

Upon initializing a project:

    -
  1. Project-level .Rprofile to activate custom package library on startup
  2. -
  3. Lockfile renv.lock to describe state of project library
  4. -
  5. renv/library to hold private project library
  6. -
  7. renv/activate.R performs activation
  8. +
  9. Project-level .Rprofile to activate custom package library on startup
  10. +
  11. Lockfile renv.lock to describe state of project library
  12. +
  13. renv/library to hold private project library
  14. +
  15. renv/activate.R performs activation

Develop a Routine

Sticking with {renv} will pay off (trust me)

    -
  • Fair play to mix packages from CRAN, GitHub, and proprietary sources
  • -
  • Roll back when a package upgrade doesn’t play nicely
  • -
  • You make the call when to update your library!
  • +
  • Fair play to mix packages from CRAN, GitHub, and proprietary sources
  • +
  • Roll back when a package upgrade doesn’t play nicely
  • +
  • You make the call when to update your library!
@@ -496,17 +496,17 @@

Application Structure Options

A Single Point: app.R

Prototype apps can coast by with a single app.R

    -
  • More inputs, visualizations, modules, tabs …
  • -
  • Eventually the app.R almost explodes
  • -
  • Difficult to collaborate without conflicts
  • +
  • More inputs, visualizations, modules, tabs …
  • +
  • Eventually the app.R almost explodes
  • +
  • Difficult to collaborate without conflicts

R Directory

@@ -515,9 +515,9 @@

Enter the {golem}Opinionated framework for building production-grade Shiny applications as R packages

    -
  • Scripts guide you with first steps akin to {usethis} & {devtools}
  • -
  • Encourages Shiny best practices (especially modules)
  • -
  • Streamlines deployment on multiple platforms
  • +
  • Scripts guide you with first steps akin to {usethis} & {devtools}
  • +
  • Encourages Shiny best practices (especially modules)
  • +
  • Streamlines deployment on multiple platforms

@@ -660,18 +660,18 @@

What are Modules?

Building blocks to compose any Shiny app out of smaller, more understandable pieces

    -
  • Avoids namespace collisions when using same widget across different areas of your app
  • -
  • Allow you to encapsulate distinct app interfaces
  • -
  • Organize code into logical and easy-to-understand components
  • -
  • Facilitate collaboration
  • +
  • Avoids namespace collisions when using same widget across different areas of your app
  • +
  • Allow you to encapsulate distinct app interfaces
  • +
  • Organize code into logical and easy-to-understand components
  • +
  • Facilitate collaboration

Sound familiar?

    -
  • R functions also help avoid collisions in variable names with general R code
  • -
  • Essential for creating non-trivial and extensive workflows
  • +
  • R functions also help avoid collisions in variable names with general R code
  • +
  • Essential for creating non-trivial and extensive workflows
@@ -748,8 +748,8 @@

Anatomy of a Module (UI)

}
    -
  • id: String to use for namespace
  • -
  • ns <- NS(id): Create proper namespace function
  • +
  • id: String to use for namespace
  • +
  • ns <- NS(id): Create proper namespace function
@@ -830,7 +830,7 @@

Anatomy of a Module (Server)

@@ -868,9 +868,9 @@

Giving and Receiving

}
@@ -896,7 +896,7 @@

Giving and Receiving

) }
@@ -927,10 +927,19 @@

To () or not to ()

+
+
+
+

Code-Along

+

Code-Along 1: Add a new Shiny module to pick themes

+
+
+

Your Turn: Exercise 1

+

Create a new Shiny module with LEGO data metrics!