Learn R Programming

blockr.core

Overview

blockr is a framework for data analysis, using a web-based point and click user interface. Use blockr to create web apps that perform visual programming, leveraging the power of R.

Installation

You can install the development version of blockr.core from GitHub with:

pak::pak("BristolMyersSquibb/blockr.core")

What is blockr.core?

blockr.core is the entry point to blockr, providing the core functionality needed to get started. It can be run as a stand-alone app, but is designed with extensibility in mind. A rich API is provided to connect your own blocks and override the default behaviors (e.g., you can add your own GUI layer or serialization).

What is a block?

A block is a fundamental unit of a data analysis workflow. A single block performs a single task, such as loading or filtering or visualization. Blocks can be joined together using a DAG (direct acyclic graph) to create powerful data workflows.

Who is it for?

blockr targets two main user groups:

  • non developers are empowered to create insightful data workflows using pre-built blocks that can be easily connected, all without writing a single line of code.
  • developers are provided with a set of tools to create new blocks and extend blockr, thereby enhancing the entire framework and fostering collaboration within teams and organisations.

Key features

  1. User-Friendly Interface: Build data pipelines with intuitive interface, like with blockr.dock.
  2. Flexibility: Easily add, remove, or rearrange blocks in your pipeline.
  3. Extensibility: Developers can create custom blocks to extend functionality (blockr.dplyr, blockr.ai, blockr.io, blockr.sdtm, …)
  4. Reproducibility: Pipelines created with blockr.core are easily shareable and reproducible, with exportable code.
  5. Interactivity: Real-time feedback as you build and modify your pipeline.

Getting started

To get started, we invite you to read this vignette.

Extending blockr

We started to build blockr extensions to enrich blockr.core’s capabilities:

  • blockr.dplyr: an entry point to the dplyr ecosystem.
  • blockr.ai: LLM-powered blocks.
  • blockr.io: handle different data input format (xpt, csv, …) and output for export.
  • blockr.sdtm: pharmaverse datasets blocks.

If you wish to learn to develop your own blocks, have a look at this vignette.

Copy Link

Version

Install

install.packages('blockr.core')

Monthly Downloads

353

Version

0.1.3

License

GPL (>= 3)

Maintainer

Nicolas Bennett

Last Published

July 12th, 2026

Functions in blockr.core (0.1.3)

board_loader

Board loader
export_code

Utilities for code export
manage_stacks

Plugin module for managing board stacks
manage_links

Plugin module for managing board links
generate_code

Code generation plugin module
manage_blocks

Plugin module for managing board blocks
locked-board

Locked boards
new_plot_block

Plot block constructors
new_stack

Stacks
include_mermaid

Include a pre-rendered mermaid diagram
new_link

Board links
new_board

Board
get_session

Shiny utilities
new_text_block

Text block constructors
board_ctor

Board options
new_data_block

Data block constructors
new_block

Blocks
new_file_block

File block constructors
new_block_arg

Block argument specification
new_plugin

Board plugin
new_parser_block

Parser block constructors
preserve_board

Serialization plugin module
rand_names

Random IDs
is_acyclic.board

Graph utils
trim_rv

Remove entries from a reactiveValues object
set_names

Miscellaneous utilities
stack_ui

Stack UI
register_block

Block registry
serve

Serve object
new_transform_block

Transform block constructors
write_log

Logging
notify_user

User notification plugin module
generate_plugin_args

Testing utilities
str_value

Compact rendering
block_name

Block utilities
block_metadata

Block metadata
is_scalar

Assertions
blockr_option

Blockr Options
blockr_abort

Blockr conditions
block_ui

Block UI
block_eval

Block server
bbquote

Quoting utilities
block_roclet

Block registration roclet
blockr_ser

Serialization utilities
board_ui.board_options

Board UI
edit_block

Plugin module for editing board blocks
board_update

Board update
board_server

Board server
edit_stack

Plugin module for editing board stacks
destroy_module

Destroy a Shiny module
board_blocks

Board utils
ctrl_block

Plugin module for external control of block inputs
chr_ply

Functional programming utilities