Description
Introduction
Shiny is a powerful R package that enables data scientists and analysts to turn R code into interactive web applications with ease. “Shiny Essentials: Building Interactive Web Apps with R” is designed to equip learners with the foundational skills to create responsive dashboards, visualizations, and tools directly from R, without requiring HTML, CSS, or JavaScript expertise.
Prerequisites
-
Basic proficiency in R programming
-
Familiarity with data manipulation using
dplyr
ortidyverse
-
Basic understanding of data visualization using
ggplot2
-
No web development experience required
Table of Contents
1. Introduction to Shiny Framework
1.1 What is Shiny and Why Use It?
1.2 Core Architecture: UI and Server Functions
1.3 Anatomy of a Basic Shiny App
1.4 Installing and Running Your First App
2. Building User Interfaces
2.1 Layout Functions: fluidPage
, sidebarLayout
, navbarPage
2.2 Using Input Widgets: textInput
, sliderInput
, numericInput
, etc.
2.3 Output Elements: verbatimTextOutput
, tableOutput
, plotOutput
2.4 UI Customization with shinythemes
and bslib
3. Mastering Reactivity
3.1 The Reactive Graph: How Dependencies Work
3.2 Reactive Expressions vs Observers
3.3 Using reactiveValues
, observeEvent
, and eventReactive
3.4 Debugging Reactive Code and Reactlog
4. Working with Data
4.1 Uploading and Previewing Datasets (fileInput
)
4.2 Data Transformation with dplyr
Inside Server Logic
4.3 Rendering Dynamic Data Tables with DT
4.4 Exporting Data and Downloads (downloadHandler
)
5. Advanced Data Visualization
5.1 Interactive Plots with plotly
and ggplot2
5.2 Conditional Plot Rendering and Zoom Controls
5.3 User-driven Plot Customization
5.4 Real-Time Data Visualization Use Cases
6. Enhancing Interactivity
6.1 Dynamic UI with renderUI
and uiOutput
6.2 Conditional Panels and Reactive UI Elements
6.3 Using Action Buttons and Events
6.4 Integrating Date and Time Inputs
7. Modularizing Shiny Applications
7.1 Benefits of Modularization
7.2 Creating Reusable UI and Server Components
7.3 Namespacing with NS()
7.4 Organizing Complex Apps with Modules
8. Theming, Styling, and Branding
8.1 Customizing Appearance with CSS
8.2 Using bslib
for Bootstrap Customization
8.3 Adding HTML, Icons, and Custom Fonts
8.4 Accessibility Best Practices
9. Working with External APIs and Databases
9.1 Making API Calls from Server Functions
9.2 Authenticating with APIs
9.3 Connecting to SQL Databases
9.4 Displaying External Data in Real-Time
10. State Management and Persistent Storage
10.1 Saving Inputs and Session Data
10.2 Using shinyStore
, shinyjs
, or localStorage
10.3 Bookmarking and Restoring App State
10.4 Session Timeout and User Inactivity Handling
11. Testing and Debugging Shiny Apps
11.1 Logging and Error Messages
11.2 Using shinytest
and testthat
11.3 Profiling and Performance Metrics
11.4 Handling Missing Inputs and Edge Cases
12. Deployment and Maintenance
12.1 Deploying to shinyapps.io
12.2 Setting Up Shiny Server (Open Source and Pro)
12.3 Continuous Deployment with GitHub and RStudio
12.4 Monitoring and Scaling Shiny Apps
Shiny empowers R users to deliver interactive, data-driven web apps without a steep learning curve. This course lays the foundation for building effective and engaging Shiny applications, enabling you to transform static analysis into interactive experiences for broader audiences.
Reviews
There are no reviews yet.