
Learn to build interactive R Shiny web apps with input widgets, filters, and dynamic plots, master app structure, styling, and embedding web content.
Explore building interactive R Shiny apps for advanced data visualization, mastering dashboards, filters, parameters, and interactive charts and tables, with deployment options and practical project work.
Explore the basic shiny template and its server, input, output, and session components, along with user interface concepts, sliders, plots, and deployment naming conventions.
Explore the R Shiny widget gallery to learn common input widgets for capturing user input. Use dates, text, numbers, files, checkboxes, radio buttons, sliders, and action buttons to drive outputs.
Navigate a comprehensive link list of tools and documentation for building Shiny apps. It highlights official Shiny documentation by RStudio, deployment options, input widgets, layout guides, and beginner resources.
Connect the user interface to the server in a Shiny app using reactive input and the render plot and plot output to build interactive GDP charts with multi-page layouts.
Learn how to integrate text input and checkbox input in the user interface, using input IDs, labels, and default values to enable user interaction.
Connect user input to the server in a Shiny app using observe and updateTextInput to drive a reactive second box; learn render, reactive, and observe event.
Explore how a Shiny app combines reactive expressions and render functions to produce an interactive scatter plot controlled by a slider.
Discover how to plan shiny app layouts that balance analytics with visuals, using fluid pages and a sidebar layout to create responsive, professional dashboards in R.
Explore how to build multi-page Shiny apps with tab sets, using tabsetPanel and tabPanel to create three tabs, a sidebar with a slider, and a responsive main panel.
Learn how shiny translates your user interface into HTML and use direct tags, with tags, and the text dollar sign prefix to build R Shiny apps with HTML tags.
Style your Shiny app with themes from Shiny Themes and CSS options like includeCSS, inline CSS with shinyJS, or head tag styling, then apply a theme such as darkly.
Deploy Shiny apps on a dedicated server, use render data table and data table output for interactive tables with CSV downloads, and embed documentation with HTML tags.
Publish and share Shiny apps by deploying to Shiny apps.io or your own server, ensuring R and Shiny are available on the server and testing locally across viewers and browsers.
Deploy Shiny apps via Shiny App Store by connecting to GitHub or Google, installing RS Connect, and publishing with app.R, server.R, and UI.R while enabling authentication.
Explore integrating interactive data tables into Shiny with the DT package, handle function conflicts between Shiny and DT, and customize tables with currency formatting, colors, filters, and options.
Explore how to make Shiny plots responsive to user input with brush and click selections, linking interactive plots to tables using brushed points and nearPoints.
Learn to export brushed selections from a Shiny data table to a csv file using a download button and download handler in an interactive diamond dataset app.
Learn to embed media types—video, image, iframe, and text—from local and online sources in a Shiny app using tags and a text include function across a four-tab navbar.
Explore the shiny gallery for use cases to build advanced shiny apps. Learn about interactive visualizations, widgets, layouts, reactive programming, and accessing underlying code or GitHub resources.
Explore a mining stock dataset with 50 observations, market capitalization, symbols, and grade-based plots; compute a score with user weights and load a semicolon-separated csv into an R Shiny app.
Discover the mining stock scale app in R Shiny, using g1, g2, g3 grade factors and sliders to visualize valuations and export results to csv.
Create a three-tab shiny interface with sliders, a brush-enabled plot, and a data table plus download button, all styled with the sandstone theme and integrated documentation iframe.
Show how to build a Shiny server that loads a semicolon-delimited csv, uses ggplot2 and dt with shiny themes, and enables reactive data processing, brushing, and csv download.
Conclude this shiny tutorial by reflecting on the journey and deployment options, including WordPress iFrame embedding and shinyapps.io hosting, while reinforcing concepts like tables, plots, download features, and input widgets.
R shiny allows you to present your data interactively – that means your app users can:
App users can do all of this without any R knowledge. You do the coding, your users get the info they are looking for!
In this course I will show you step by step how to master R Shiny. We will start out with the general shiny script – all scripts should have the same basic structure.
You will then learn how to make your app interactive by using input widgets. These features take user inputs which can be used to generate or modify the app content.
You will learn how to style your app for an appealing layout.
I will also show you how to use HTML tags to integrate or embed standard web content like youtube videos, pdfs, text, pictures and much more.
After that you will learn about advanced shiny apps that allow zooming and downloading
And you will learn how to integrate tables.
This course is not just pure theory. The last section is all about applying your new shiny skills. I prepared a course project which combines all the topics discussed in the course and more. This project is modeled after a real world financial app. You will get the project description and the raw data to test your skills.
Note that this course requires basic R skills. If you are totally new to R, check out some R intro material first and then revisit the course.
All the software downloads, add on packages as well as entry level hosting for shiny are totally free. I will show you what you need and where to get it. That includes hosting as well.
Take a look at shiny – your boss, colleagues, students, customers will be astonished what modern day data visualization can do.