Skip to content

Commit

Permalink
Built site for gh-pages
Browse files Browse the repository at this point in the history
  • Loading branch information
Quarto GHA Workflow Runner committed Sep 4, 2023
1 parent a341f38 commit 9ec3383
Show file tree
Hide file tree
Showing 11 changed files with 376 additions and 207 deletions.
2 changes: 1 addition & 1 deletion .nojekyll
Original file line number Diff line number Diff line change
@@ -1 +1 @@
e04a4699
cfd6519d
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
45 changes: 34 additions & 11 deletions materials/d1-01-welcome/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
<link href="../../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" id="quarto-text-highlighting-styles"><meta charset="utf-8">
<meta name="generator" content="quarto-1.3.450">

<meta name="author" content="Eric Nantz">
<title>Shiny in Production - Welcome!</title>
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
Expand Down Expand Up @@ -324,7 +323,7 @@
<link href="../../site_libs/countdown-0.4.0/countdown.css" rel="stylesheet">
<script src="../../site_libs/countdown-0.4.0/countdown.js"></script>
<meta property="og:title" content="Shiny in Production - Welcome!">
<meta property="og:description" content="posit::conf(2023) Shiny in Production: Tools &amp; Techniques">
<meta property="og:description" content="Shiny in Production: Tools &amp; Techniques posit::conf(2023)">
<meta property="og:site-name" content="Shiny in Production">
</head>
<body class="quarto-light">
Expand All @@ -333,14 +332,9 @@

<section id="title-slide" class="quarto-title-block center">
<h1 class="title">Welcome!</h1>
<p class="subtitle">posit::conf(2023) <br> Shiny in Production: Tools &amp; Techniques</p>
<p class="subtitle">Shiny in Production: Tools &amp; Techniques <br> posit::conf(2023)</p>

<div class="quarto-title-authors">
<div class="quarto-title-author">
<div class="quarto-title-author-name">
Eric Nantz
</div>
</div>
</div>

</section>
Expand Down Expand Up @@ -389,7 +383,7 @@ <h2>Your Turn</h2>
<p>What is your most memorable Shiny application in production experience?</p>
<div class="cell">
<div class="cell-output-display">
<div class="countdown" id="timer_49a1d743" data-update-every="1" tabindex="0" style="right:0;bottom:0;">
<div class="countdown" id="timer_611cada4" data-update-every="1" tabindex="0" style="right:0;bottom:0;">
<div class="countdown-controls"><button class="countdown-bump-down"></button><button class="countdown-bump-up">+</button></div>
<code class="countdown-time"><span class="countdown-digits minutes">02</span><span class="countdown-digits colon">:</span><span class="countdown-digits seconds">00</span></code>
</div>
Expand Down Expand Up @@ -502,11 +496,40 @@ <h2>The Journey Ahead</h2>
<div class="fragment">
<p><br></p>
<p>The tooling &amp; principles discussed in this workshop will guide you to the destination</p>
</div>
</section></section>
<section>
<section id="the-challenge" class="title-slide slide level1 center">
<h1>The Challenge</h1>

</section>
<section id="rebrickable-inventory-dashboard" class="slide level2">
<h2>Rebrickable Inventory Dashboard</h2>
<ul>
<li class="fragment">Rebrickable: Portal for LEGO builders to discover what sets they can build with their own inventory</li>
<li class="fragment">A comprehensive database of LEGO items available for free!</li>
<li class="fragment">We will build a Shiny dashboard to explore the inventory and enable users to generate predictions</li>
</ul>
</section>
<section id="section" class="slide level2" data-background-image="assets/img/bg/rebrickable_schema.png" data-background-size="cover">
<h2></h2>
<div class="footer">

</div>
</section>

<section id="our-journey-to-production" class="slide level2">
<h2>Our Journey to Production</h2>
<ul>
<li class="fragment">Create a robust infrastructure for application source code</li>
<li class="fragment">Identify and solve performance bottlenecks</li>
<li class="fragment">Ensure app is only doing the “bare minimum” for a snappy user experience</li>
<li class="fragment">Tune deployment to meet demand of potentially many simultaneous users</li>
</ul>

<div class="footer footer-default">
<p><a href="https://posit-conf-2023.github.io/shiny-r-prod">posit-conf-2023.github.io/shiny-r-prod</a></p>
</div>
</div>
</section></section>
</div>
</div>
Expand Down Expand Up @@ -563,7 +586,7 @@ <h2>The Journey Ahead</h2>
slideNumber: 'c/t',

// 'all', 'print', or 'speaker'
showSlideNumber: 'all',
showSlideNumber: 'print',

// Add the current slide number to the URL hash so that reloading the
// page/copying the URL will return you to the same slide
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
305 changes: 146 additions & 159 deletions materials/d1-02-structure/index.html

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
124 changes: 124 additions & 0 deletions materials/d1-03-performance/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,71 @@
margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */
vertical-align: middle;
}
/* CSS for syntax highlighting */
pre > code.sourceCode { white-space: pre; position: relative; }
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
pre > code.sourceCode > span:empty { height: 1.2em; }
.sourceCode { overflow: visible; }
code.sourceCode > span { color: inherit; text-decoration: inherit; }
div.sourceCode { margin: 1em 0; }
pre.sourceCode { margin: 0; }
@media screen {
div.sourceCode { overflow: auto; }
}
@media print {
pre > code.sourceCode { white-space: pre-wrap; }
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
}
pre.numberSource code
{ counter-reset: source-line 0; }
pre.numberSource code > span
{ position: relative; left: -4em; counter-increment: source-line; }
pre.numberSource code > span > a:first-child::before
{ content: counter(source-line);
position: relative; left: -1em; text-align: right; vertical-align: baseline;
border: none; display: inline-block;
-webkit-touch-callout: none; -webkit-user-select: none;
-khtml-user-select: none; -moz-user-select: none;
-ms-user-select: none; user-select: none;
padding: 0 4px; width: 4em;
color: #aaaaaa;
}
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
div.sourceCode
{ color: #003b4f; background-color: #f1f3f5; }
@media screen {
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
}
code span { color: #003b4f; } /* Normal */
code span.al { color: #ad0000; } /* Alert */
code span.an { color: #5e5e5e; } /* Annotation */
code span.at { color: #657422; } /* Attribute */
code span.bn { color: #ad0000; } /* BaseN */
code span.bu { } /* BuiltIn */
code span.cf { color: #003b4f; } /* ControlFlow */
code span.ch { color: #20794d; } /* Char */
code span.cn { color: #8f5902; } /* Constant */
code span.co { color: #5e5e5e; } /* Comment */
code span.cv { color: #5e5e5e; font-style: italic; } /* CommentVar */
code span.do { color: #5e5e5e; font-style: italic; } /* Documentation */
code span.dt { color: #ad0000; } /* DataType */
code span.dv { color: #ad0000; } /* DecVal */
code span.er { color: #ad0000; } /* Error */
code span.ex { } /* Extension */
code span.fl { color: #ad0000; } /* Float */
code span.fu { color: #4758ab; } /* Function */
code span.im { color: #00769e; } /* Import */
code span.in { color: #5e5e5e; } /* Information */
code span.kw { color: #003b4f; } /* Keyword */
code span.op { color: #5e5e5e; } /* Operator */
code span.ot { color: #003b4f; } /* Other */
code span.pp { color: #ad0000; } /* Preprocessor */
code span.sc { color: #5e5e5e; } /* SpecialChar */
code span.ss { color: #20794d; } /* SpecialString */
code span.st { color: #20794d; } /* String */
code span.va { color: #111111; } /* Variable */
code span.vs { color: #20794d; } /* VerbatimString */
code span.wa { color: #5e5e5e; font-style: italic; } /* Warning */
</style>
<link rel="stylesheet" href="../../site_libs/revealjs/dist/theme/quarto.css">
<link href="../../site_libs/revealjs/plugin/quarto-line-highlight/line-highlight.css" rel="stylesheet">
Expand Down Expand Up @@ -343,6 +408,65 @@ <h1 class="title">Performance</h1>
</section>
<section id="more-to-come" class="slide level2">
<h2>More to Come</h2>
</section>
<section id="what-is-profvis" class="slide level2">
<h2>What is {profvis}?</h2>
<p>R package for visualizing how (and how fast/slow) your R code runs</p>
<p><a href="https://rstudio.github.io/profvis/index.html">{profvis} website</a></p>

<img data-src="assets/img/example_profvis_report.png" class="r-stretch"><aside class="notes">
<ul>
<li>The package is from Posit</li>
</ul>
<style type="text/css">
span.MJX_Assistive_MathML {
position:absolute!important;
clip: rect(1px, 1px, 1px, 1px);
padding: 1px 0 0 0!important;
border: 0!important;
height: 1px!important;
width: 1px!important;
overflow: hidden!important;
display:block!important;
}</style></aside>
</section>
<section id="working-with-profvis-golem" class="slide level2" data-auto-animate="true">
<h2 data-id="quarto-animate-title">Working with {profvis} &amp; {golem}</h2>
<p>Our <code>dev/run_dev.R</code> script is where we can profile our app interactively.</p>
<p>We can modify the original code…</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode r code-with-copy" data-id="quarto-animate-code"><code class="sourceCode r hljs"><span id="cb1-1" class="hljs-ln-code"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">options</span>(<span class="at">golem.app.prod =</span> <span class="cn">FALSE</span>)</span>
<span id="cb1-2" class="hljs-ln-code"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb1-3" class="hljs-ln-code"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a>golem<span class="sc">::</span><span class="fu">detach_all_attached</span>()</span>
<span id="cb1-4" class="hljs-ln-code"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb1-5" class="hljs-ln-code"><a href="#cb1-5" aria-hidden="true" tabindex="-1"></a>golem<span class="sc">::</span><span class="fu">document_and_reload</span>()</span>
<span id="cb1-6" class="hljs-ln-code"><a href="#cb1-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb1-7" class="hljs-ln-code"><a href="#cb1-7" aria-hidden="true" tabindex="-1"></a><span class="fu">run_app</span>()</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
</section>
<section id="working-with-profvis-golem-1" class="slide level2" data-auto-animate="true">
<h2 data-id="quarto-animate-title">Working with {profvis} &amp; {golem}</h2>
<p>and wrap <code>run_app()</code> in <code>print()</code>, then <code>profvis()</code></p>
<div class="sourceCode" id="cb2"><pre class="sourceCode r code-with-copy" data-id="quarto-animate-code"><code class="sourceCode r hljs"><span id="cb2-1" class="hljs-ln-code"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="fu">options</span>(<span class="at">golem.app.prod =</span> <span class="cn">FALSE</span>)</span>
<span id="cb2-2" class="hljs-ln-code"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-3" class="hljs-ln-code"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a>golem<span class="sc">::</span><span class="fu">detach_all_attached</span>()</span>
<span id="cb2-4" class="hljs-ln-code"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-5" class="hljs-ln-code"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a>golem<span class="sc">::</span><span class="fu">document_and_reload</span>()</span>
<span id="cb2-6" class="hljs-ln-code"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb2-7" class="hljs-ln-code"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a>profvis<span class="sc">::</span><span class="fu">profvis</span>({</span>
<span id="cb2-8" class="hljs-ln-code"><a href="#cb2-8" aria-hidden="true" tabindex="-1"></a> <span class="fu">print</span>(<span class="fu">run_app</span>())</span>
<span id="cb2-9" class="hljs-ln-code"><a href="#cb2-9" aria-hidden="true" tabindex="-1"></a>})</span></code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre></div>
<aside class="notes">
<p>You need to wrap the <code>run_app()</code> function in <code>print()</code>, before passing it to <code>profvis::profvis()</code></p>
<style type="text/css">
span.MJX_Assistive_MathML {
position:absolute!important;
clip: rect(1px, 1px, 1px, 1px);
padding: 1px 0 0 0!important;
border: 0!important;
height: 1px!important;
width: 1px!important;
overflow: hidden!important;
display:block!important;
}</style></aside>

<div class="footer footer-default">
<p><a href="https://posit-conf-2023.github.io/shiny-r-prod">posit-conf-2023.github.io/shiny-r-prod</a></p>
Expand Down
14 changes: 7 additions & 7 deletions schedule.html
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ <h1 class="title">Workshop Schedule</h1>
</tr>
</thead>
<tbody class="list">
<tr data-index="0" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Welcome &amp; Setup" data-listing-filename-sort="d1-01-welcome.qmd">
<tr data-index="0" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Welcome &amp; Setup" data-listing-filename-sort="d1-01-welcome.qmd">
<td>
<span class="listing-subtitle">9:00 - 9:30</span>
</td>
Expand All @@ -211,7 +211,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author">Eric Nantz &amp; Michael Thomas</span>
</td>
</tr>
<tr data-index="1" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Application Structure" data-listing-filename-sort="d1-02-structure.qmd">
<tr data-index="1" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Application Structure" data-listing-filename-sort="d1-02-structure.qmd">
<td>
<span class="listing-subtitle">9:30 - 10:30</span>
</td>
Expand All @@ -222,7 +222,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author">Eric Nantz &amp; Michael Thomas</span>
</td>
</tr>
<tr data-index="2" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Coffee &amp; refreshments break" data-listing-filename-sort="d1-02b-break.qmd">
<tr data-index="2" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Coffee &amp; refreshments break" data-listing-filename-sort="d1-02b-break.qmd">
<td>
<span class="listing-subtitle">10:30 - 11:00</span>
</td>
Expand All @@ -233,7 +233,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author"></span>
</td>
</tr>
<tr data-index="3" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Performance" data-listing-filename-sort="d1-03-performance.qmd">
<tr data-index="3" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Performance" data-listing-filename-sort="d1-03-performance.qmd">
<td>
<span class="listing-subtitle">TBD</span>
</td>
Expand All @@ -244,7 +244,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author">Eric Nantz &amp; Michael Thomas</span>
</td>
</tr>
<tr data-index="4" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Lunch break" data-listing-filename-sort="d1-03b-lunch.qmd">
<tr data-index="4" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Lunch break" data-listing-filename-sort="d1-03b-lunch.qmd">
<td>
<span class="listing-subtitle">12:30 - 13:30</span>
</td>
Expand All @@ -255,7 +255,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author"></span>
</td>
</tr>
<tr data-index="5" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Deployment &amp; Administration" data-listing-filename-sort="d1-04-deploy-admin.qmd">
<tr data-index="5" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Deployment &amp; Administration" data-listing-filename-sort="d1-04-deploy-admin.qmd">
<td>
<span class="listing-subtitle">TBD</span>
</td>
Expand All @@ -266,7 +266,7 @@ <h1 class="title">Workshop Schedule</h1>
<span class="listing-author">Eric Nantz &amp; Michael Thomas</span>
</td>
</tr>
<tr data-index="6" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693765931947" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Coffee &amp; refreshments break" data-listing-filename-sort="d1-04b-break.qmd">
<tr data-index="6" data-listing-date-sort="1694995200000" data-listing-file-modified-sort="1693786618389" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Coffee &amp; refreshments break" data-listing-filename-sort="d1-04b-break.qmd">
<td>
<span class="listing-subtitle">15:00 - 15:30</span>
</td>
Expand Down
Loading

0 comments on commit 9ec3383

Please sign in to comment.