-
Notifications
You must be signed in to change notification settings - Fork 3
/
index.Rmd
92 lines (62 loc) · 3.58 KB
/
index.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
---
output: github_document
always_allow_html: true
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-"
)
library(blockr)
library(bslib)
library(DiagrammeR)
```
<!-- index.md is generated from index.Rmd. Please edit that file -->
# blockr
<!-- badges: start -->
[![ci](https://github.com/blockr-org/blockr/actions/workflows/ci.yml/badge.svg)](https://github.com/blockr-org/blockr/actions/workflows/ci.yml)
[![codecov](https://codecov.io/github/blockr-org/blockr/graph/badge.svg?token=9AO88LK8FJ)](https://codecov.io/github/blockr-org/blockr)
<!-- badges: end -->
> {blockr} is Shiny's WordPress (John Coene, 2024)
## Why blockr?
`{blockr}` is an R package designed to democratize data analysis by providing a flexible, intuitive, and __code-free__ approach to building data pipelines.
## Who is it for?
`{blockr}` has 2 main user targets:
1. On the one hand, it empowers __non technical__ users to create insightful data workflows using pre-built blocks that can be __easily__ connected, all without writing a single line of code.
Below is a simple pre-built case study involving `{blockr}`. We use the palmerpenguins dataset to find out which femal species has the largest flippers. This tiny dashboard is composed of 4 steps: import the data, filter, create the plot and chose the geometry (points). Within each step (block), the user can change inputs and see the changes propagate in real time. Notice that the filter step requires to press a submit button before moving forward, which prevents the plot from appearing first. This is to prevent long running task from being run unecessarily. You can find more in other vignettes.
```{r, echo=FALSE}
# shinylive container
card(
blockr:::create_app_link(
blockr:::shinylive_links["palmer-penguins"],
"app",
header = FALSE
),
full_screen = TRUE
)
```
You can of course start with a totally empty dashboard and create your own analysis from scratch.
2. On the other hand, it provides __developers__ with a set of tools to seamlessly create new blocks, thereby enhancing the entire framework and fostering __collaboration__ within organizations teams. For instance, regarding the previous example, below is what it takes to create such dashboard.
```{r, results="asis", echo=FALSE, warning=FALSE, comment = ""}
blockr:::print_shinylive_r_code("palmer-penguins")
```
Note that the `{blockr.ggplot2}` [package](https://github.com/BristolMyersSquibb/blockr.ggplot2) exposes some ready to use blocks as shown above.
## How to get started?
To get started, we invite you to read this [vignette](https://bristolmyerssquibb.github.io/blockr/articles/blockr.html).
To get a better idea of `{blockr}` capabilities in various data context, you can look at this [vignette](https://bristolmyerssquibb.github.io/blockr/articles/blockr_examples.html).
## Key features
1. **User-Friendly Interface**: Build data pipelines with intuitive interface.
2. **Flexibility**: Easily add, remove, or rearrange blocks in your pipeline.
3. **Extensibility**: Developers can create custom blocks to extend functionality.
4. **Reproducibility**: Pipelines created with `blockr` are easily shareable and reproducible, with exportable code.
5. **Interactivity**: Real-time feedback as you build and modify your pipeline.
## Installation
You can install the development version of blockr from [GitHub](https://github.com/) with:
```r
pak::pak("BristolMyersSquibb/blockr")
```
## Contribute
Easiest is to run `make`, otherwise:
1. Install npm dependencies with `packer::npm_install()`
2. Build CSS by running the script in `dev/sass.R`