Skip to content
RMarkdown tools for creating self-guided web exercises
Branch: master
Clone or download
Latest commit 5e16f9d May 5, 2019

The webex package

The goal of webex is to enable instructors to easily create interactive web pages that students can use in self-guided learning. Although webex has fewer features than RStudio's learnr package, it is more lightweight: whereas learnr tutorials must be either hosted on a shiny server or run locally, webex creates standalone HTML files that require only a JavaScript-enabled browser. It is also extremely simple to use.


You can install webex from CRAN using:


You can install the development version of webex from GitHub with:


Creating interactive widgets with inline code

The webex package provides functions that create HTML widgets using inline R code. These functions are:

function widget description
fitb() text box fill-in-the-blank question
mcq() pull-down menu multiple choice question
torf() pull-down menu TRUE or FALSE question
hide() and unhide() button solution revealed when clicked

The appearance of the text box and pull-down menu widgets changes when users enter the correct answer. Answers can be either static or dynamic (i.e., specified using R code). Widget styles can be changed using style_widgets().

Examples are provided in the Web Exercises R Markdown template. To create a file from the webex template in RStudio, click File -> New File... -> RMarkdown and in the dialog box that appears, select From Template and choose Web Exercises.

Alternatively (or if you're not using RStudio) use:

rmarkdown::draft("exercises.Rmd", "webex", "webex")

Knit the file to HTML to see how it works. Note: The widgets only function in a JavaScript-enabled browser. The RStudio built-in browser does not have JavaScript. Click the "Open in Browser" button to use your operating system's browser.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

You can’t perform that action at this time.