dash

Create data science and AI web apps in R

https://github.com/plotly/dashr

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (19.8%) to scientific vocabulary

Keywords

dash data-science data-visualization plotly plotly-dash python r react web-application

Keywords from Contributors

charting web-app bioinformatics gui-framework productivity technical-computing interactive graph-libraries declarative regl
Last synced: 6 months ago · JSON representation

Repository

Create data science and AI web apps in R

Basic Info
  • Host: GitHub
  • Owner: plotly
  • License: mit
  • Language: JavaScript
  • Default Branch: master
  • Homepage: https://dashr.plotly.com
  • Size: 62.2 MB
Statistics
  • Stars: 385
  • Watchers: 25
  • Forks: 31
  • Open Issues: 50
  • Releases: 22
Topics
dash data-science data-visualization plotly plotly-dash python r react web-application
Created over 8 years ago · Last pushed 11 months ago
Metadata Files
Readme Changelog Funding License Code of conduct Codeowners

README.md

CircleCI GitHub CRAN status

Dash for R

Maintained by the Plotly Community

Create beautiful, analytic web applications in R.

Documentation | Gallery

Installation

https://dash.plotly.com/r/installation

🛑 Make sure you're on at least version 3.0.2 of R. You can see what version of R you have by entering version in the R CLI. CRAN is the easiest place to download the latest R version.

As of 2020-06-04, dash and the currently released versions of all core component libraries are available for download via CRAN! Installing dash and its dependencies is as simple as

r install.packages("dash")

Users who wish to install (stable) development versions of the package as well as Dash components from GitHub may instead use install_github and specify the development branch:

```r install.packages(c("fiery", "routr", "reqres", "htmltools", "base64enc", "plotly", "mime", "crayon", "devtools"))

installs dash, which includes dashHtmlComponents, dashCoreComponents, and dashTable

and will update the component libraries when a new package is released

devtools::install_github("plotly/dashR", ref="dev", upgrade = TRUE) ```

Then, to load the packages in R:

r library(dash)

That's it!

Getting Started

https://dash.plotly.com/r/layout

The R package dash makes it easy to create reactive web applications powered by R. It provides an R6 class, named Dash, which may be initialized via the new() method.

```r library(dash)

app <- Dash$new() ```

Similar to Dash for Python and Dash for Julia, every Dash for R application needs a layout (i.e., user interface) and a collection of callback functions which define the updating logic to perform when input value(s) change. Take, for instance, this basic example of formatting a string:

```r library(dash)

dashapp() %>% setlayout( dccInput(id = "text", "sample"), div("CAPS: ", span(id = "out1")), div("small: ", span(id = "out2")) ) %>% addcallback( list( output("out1", "children"), output("out2", "children") ), input("text", "value"), function(text) { list( toupper(text), tolower(text) ) } ) %>% runapp() ```

Here the showcase = TRUE argument opens a browser window and automatically loads the Dash app for you.

Hello world example using dccGraph

```r library(dash)

Create a Dash app

app <- dash_app()

Set the layout of the app

app %>% set_layout( h1('Hello Dash'), div("Dash: A web application framework for your data."), dccGraph( figure = list( data = list( list( x = list(1, 2, 3), y = list(4, 1, 2), type = 'bar', name = 'SF' ), list( x = list(1, 2, 3), y = list(2, 4, 5), type = 'bar', name = 'Montr\U{00E9}al' ) ), layout = list(title = 'Dash Data Visualization') ) ) )

Run the app

app %>% run_app() ```


Screenshot of "Hello World" app

hello_dcc

Owner

  • Name: Plotly
  • Login: plotly
  • Kind: organization
  • Location: Montréal

GitHub Events

Total
  • Issues event: 1
  • Watch event: 5
  • Member event: 1
  • Push event: 1
  • Pull request event: 1
  • Fork event: 1
  • Create event: 1
Last Year
  • Issues event: 1
  • Watch event: 5
  • Member event: 1
  • Push event: 1
  • Pull request event: 1
  • Fork event: 1
  • Create event: 1

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 691
  • Total Committers: 22
  • Avg Commits per committer: 31.409
  • Development Distribution Score (DDS): 0.644
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Ryan Patrick Kyle r****n@p****y 246
Carson Sievert c****1@g****m 226
Ryan Patrick Kyle r****e 124
Marc-André Rivet m****t@s****m 17
byron b****n@p****y 16
Jack Parmer j****9@g****m 15
Nadia Tahiri t****a@c****a 12
HammadTheOne 3****e 9
hammadtheone h****e@g****m 4
dependabot[bot] 4****] 4
Nadia Tahiri n****i@g****m 3
Alex Johnson j****c@g****m 3
Nicolas Kruchten n****s@p****y 2
alexcjohnson a****x@p****y 2
Shammamah Hossain s****n@g****m 1
Byron Zhu b****z 1
Marc-André Rivet M****t 1
Dean Attali d****n@a****m 1
Metin Yazici s****l@g****m 1
Chris Parmer c****s@p****y 1
John Bampton j****n 1
Dean Attali d****i@g****m 1
Committer Domains (Top 20 + Academic)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total docker downloads: 42,085
  • Total dependent packages: 4
  • Total dependent repositories: 16
  • Total versions: 5
cran.r-project.org: dash

An Interface to the Dash Ecosystem for Authoring Reactive Web Applications

  • Versions: 5
  • Dependent Packages: 4
  • Dependent Repositories: 16
  • Downloads: 0
  • Docker Downloads: 42,085
Rankings
Stargazers count: 1.0%
Forks count: 2.1%
Dependent repos count: 7.4%
Dependent packages count: 9.6%
Average: 21.9%
Downloads: 89.7%
Last synced: 11 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.0.2 depends
  • R6 * imports
  • assertthat * imports
  • base64enc * imports
  • brotli * imports
  • crayon * imports
  • digest * imports
  • fiery > 1.0.0 imports
  • glue * imports
  • htmltools * imports
  • jsonlite * imports
  • magrittr * imports
  • methods * imports
  • mime * imports
  • plotly * imports
  • reqres >= 0.2.3 imports
  • rlang * imports
  • routr > 0.2.0 imports
  • utils * imports
  • rstudioapi * suggests
  • testthat >= 3.0.0 suggests
package-lock.json npm
  • 509 dependencies
package.json npm
  • babel-eslint ^10.0.1 development
  • eslint ^5.8.0 development
  • eslint-config-prettier ^3.0.1 development
  • eslint-plugin-import ^2.14.0 development
  • eslint-plugin-react ^7.11.1 development
  • fancy-log ^1.3.3 development
  • fs-extra ^9.0.1 development
  • gulp ^4.0.2 development
  • gulp-concat 2.6.1 development
  • gulp-print ^5.0.2 development
  • gulp-rename ^2.0.0 development
  • gulp-replace ^1.0.0 development
  • mkdirp ^0.5.4 development
  • prettier ^1.14.2 development
  • set-value >=4.0.1 development
  • shelljs 0.8.5 development
  • npm-run-all 4.1.5
build/Dockerfile docker
  • circleci/python 3.7-stretch-node-browsers build