teal: Interactive Exploratory Data Analysis with Shiny Web-Applications

CRAN Version Total Downloads Last Month Downloads Last Week Downloads

Check 🛠 Docs 📚 Code Coverage 📔

GitHub forks GitHub repo stars

GitHub commit activity GitHub contributors GitHub last commit GitHub pull requests GitHub repo size GitHub language count Project Status: Active – The project has reached a stable, usable state and is being actively developed. Current Version Open Issues

teal is a shiny-based interactive exploration framework for analyzing data. teal applications require app developers to specify:

A lot of the functionality of the teal framework derives from the following packages:



# install.packages("pak")

Alternatively, you might also use the development version.

install.packages("teal", repos = c("https://pharmaverse.r-universe.dev", getOption("repos")))

# install.packages("pak")



app <- init(
  data = teal_data(iris = iris),
  modules = list(
      label = "iris histogram",
      server = function(input, output, session, data) {
        updateSelectInput(session = session,
                          inputId =  "var",
                          choices = names(data()[["iris"]])[1:4])

        output$hist <- renderPlot({
          hist(x = data()[["iris"]][[input$var]])
      ui = function(id) {
        ns <- NS(id)
          selectInput(inputId = ns("var"),
                      label =  "Column name",
                      choices = NULL),
          plotOutput(outputId = ns("hist"))

shinyApp(app$ui, app$server)
App recording

Please see teal.gallery and TLG Catalog to see examples of teal apps.

Please start with the “Technical Blueprint” article, “Getting Started” article, and then other package vignettes for more detailed guide.

Getting help

If you encounter a bug or have a feature request, please file an issue. For questions, discussions, and updates, use the teal channel in the pharmaverse slack workspace.


This package is a result of a joint efforts by many developers and stakeholders. We would like to thank everyone who contributed so far!

Stargazers and Forkers

Stargazers over time

Stargazers over time


Stargazers repo roster for @insightsengineering/teal


Forkers repo roster for @insightsengineering/teal