ProductioniZing Shiny Applications — AthlyticZ Course
← All courses

Self-paced course · Intermediate

ProductioniZing Shiny Applications

Take Shiny apps from prototype to production — modules, testing, deployment, scaling — the engineering skills that turn “can make a dashboard” into “ships production apps.”

21sections
81lessons
Self-pacedlifetime access
Freewith Membership
Enroll now

Taught by Veerle Eeftink - van Leemput. Included free with AthlyticZ Membership.

Veerle Eeftink - van Leemput
Veerle Eeftink - van Leemput
Head of Operations, AthlyticZ
David Granjon, PhD
David Granjon, PhD
Senior Curriculum Advisor

Who this is for

  • R developers who can build a basic Shiny app and want to ship production-grade, maintainable, deployable apps.

Not for you if

  • You've never used Shiny
  • You want Python dashboards
  • You only need a one-off prototype
  • You want theory, not production practice

What you leave with

  • Modular, tested, documented Shiny apps
  • Deployment across shinyapps.io, Posit Connect, ShinyProxy, and more
  • Performance, caching, security, and scaling
  • A production-ready Olympics app with CI/CD

The full curriculum

21 sections · 81 lessons. Every section is listed with its lesson count; click any section to see its lessons.
Expand all
01Introduction to the Course2 lessons
1.1Welcome and Course Overview
1.2Prerequisites and Setting up your Environment
02What is Production?2 lessons
2.1Understanding Production in Software Development
2.2Considerations for a Production-Grade Shiny App
03Building Your Foundation - A Simple Shiny App6 lessons
3.1The Shiny App Structure
3.2Building the User Interface (UI)
3.3The Server Logic
3.4Data, Functions and Constants: Basic Scoping Rules
3.5Basic Reactivity
3.6Using Events
04Debugging Your Shiny App2 lessons
4.1Common Pitfalls and Troubleshooting
4.2Debugging Strategies
05Working with Data5 lessons
5.1Case Study - Olympics Data
5.2Tabular Data
5.3Interactive Graphics
5.4Input Validation
5.5Handling File Uploads and Downloads
Career payoff“Ships production Shiny” is a materially higher pay band than “makes dashboards.”
06Level-up your UI6 lessons
6.1Page Layout and Introduction to Bootstrap
6.2UI packages: bslib
6.3UI packages: bs4Dash
6.4UI packages: shiny.semantic
6.5Better Input Widgets
6.6Creating Dynamic UI Elements
07Advanced Reactivity3 lessons
7.1Understanding the Reactive Graph
7.2Observers, Outputs and Reactive Values
7.3Controlling and Stopping Reactivity
08Shiny Modules4 lessons
8.1Introduction to Shiny Modules
8.2Building Your First Module
8.3Reusing Modules Throughout Your App
8.4Communication Between Modules (Sharing Data and State)
09Crafting a Seamless User Experience (UX)4 lessons
9.1Understanding UX and UI
9.2Designing and Prototyping
9.3UX Design Principles
9.4UI Design Patterns
10HTML and CSS for Shiny Apps7 lessons
10.1Basics of HTML
10.2Basics of (S)CSS
10.3Using CSS: Finding Elements and Classes
10.4Using CSS: Styling of UI Components
10.5Using CSS: Transitions and Animations
10.6Using CSS: Responsiveness
10.7CSS Best Practices
Career payoffModules and testing are what let a team trust you with real apps.
11JavaScript3 lessons
11.1Why do we need JavaScript?
11.2Add Javascript to your Shiny App with shinyjs
11.3Write Custom JavaScript Code
12Best Practices in Shiny App Development4 lessons
12.1Structuring App Code
12.2Documentation
12.3Dependency Management
12.4Version Control and Collaboration
13Taking a Framework approach: Golem3 lessons
13.1Introduction to Golem
13.2Transforming your Shiny App to a Golem Shiny App
13.3Pros and Cons of Using Golem
14Streamlining with Rhino: Another Framework3 lessons
14.1Introduction to Rhino
14.2Transforming your Shiny app to Rhino Shiny App
14.3Pros and cons using Rhino
15Advanced Techniques to Optimize Your Shiny App4 lessons
15.1Performance, Profiling and Benchmarking
15.2Caching
15.3A Gentle Introduction to Async Programming
15.4Tips For Efficient Code
16Security and Monitoring4 lessons
16.1Managing Secrets
16.2Connecting with Databases
16.3Data Security
16.4Monitoring and Auditing
Career payoffA deployed app with CI/CD is portfolio proof you can operate in production.
17Testing3 lessons
17.1Introduction to Testing
17.2Unit Testing with testthat
17.3End-to-end testing with shinytest2
18Deployment10 lessons
18.1Deployment Readiness
18.2Choosing the Right Deployment Option
18.3Shinyapps.io
18.4Shiny Server
18.5Posit Connect
18.6ShinyProxy
18.7Heroku
18.8Serverless deployment with Shinylive
18.9Continuous Integration and Continuous Deployment (CI/CD)
18.10Automatic Deployment of the Olympic Games App to shinyapps.io
19Scaling Your App for Your Audience2 lessons
19.1Understanding Scalability Metrics: Sessions, Connections & Load Factor
19.2Strategies for Scaling and Load Balancing
20Course Recap and Next Steps2 lessons
20.1Course Summary
20.2What's Next? A Peek into Outstanding InterfaceZ in Shiny
21Bonus Material2 lessons
21.1A Practical Example with renv: updating bslib
21.2Using Auth0

What's included

  • Lifetime accessEvery module and lesson, yours to keep and revisit, forever.
  • Posit cloud workspaceA provisioned enterprise IDE and compute. Nothing to install.
  • Project files and codeEvery notebook, dataset, and finished build, to keep and adapt.
  • All future updatesNew lessons and refreshes as the tools move, at no extra cost.
  • Self-pacedStart today, go at your own pace, no cohort to wait for.
  • Free with MembershipOr get this course and the full catalog with Membership.

Your instructors

Veerle Eeftink - van Leemput
Veerle Eeftink - van Leemput
Head of Operations, AthlyticZ
Known for Shiny, Production R, R Consulting

Veerle is the founder of Hypebright and a Shiny enthusiast and software engineer since 2016. After years as a data scientist across multiple industries, she founded Hypebright in 2019 to help professionals leverage the full potential of Shiny: building applications that convey a message and deliver measurable impact. Her philosophy is simple. The best way to learn is by building something real: production-grade tools that tell a story, solve problems, and matter in professional settings. She focuses on bridging the gap between analysis and impact, helping people build tools that are scalable, polished, and built to last.

LinkedIn →
David Granjon, PhD
David Granjon, PhD
Senior Curriculum Advisor
Known for Creator of shinyMobile

David joined cynkra in 2023 and holds a PhD in applied mathematics from Universite Pierre et Marie Curie and Universite de Lausanne. He is the founder of the open source RinteRface organization, where he develops Shiny extensions, writes books, and delivers advanced Shiny workshops. David previously worked in the pharmaceutical industry, where he helped design production-ready Shiny apps. He is the creator of shinyMobile, whose 2.0 release was funded by AthlyticZ and developed together with Veerle van Leemput.

LinkedIn →

Questions

Is this included with Membership?

Yes. AthlyticZ Membership ($2,999/yr) includes this and the entire course catalog, plus the live Masterclass. If you plan to take more than a couple of courses, Membership is the better math.

Is it self-paced?

Yes. Start today and go at your own pace, with lifetime access to every lesson and all future updates.

Do I need to install anything?

No. You work on the provisioned Posit platform in the browser, on the same enterprise tools professional teams use.

Taking more than one course? Get everything.

This is $1,149. Membership is $2,999/yr and includes it, the full course catalog, 1,000+ lessons, and every live Masterclass — the whole catalog for less than a few courses bought alone.

Explore Membership

ProductioniZing Shiny Applications

Take Shiny apps from prototype to production — modules, testing, deployment, scaling — the engineering skills that turn “can make a dashboard” into “ships production apps.”

Enroll now
$1,149or free with Membership
Enroll