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

296

Version

0.1.1

License

GPL (>= 3)

Maintainer

Nicolas Bennett

Last Published

December 6th, 2025

Functions in blockr.core (0.1.1)

manage_stacks

Plugin module for managing board stacks
edit_stack

Plugin module for editing board stacks
new_block

Blocks
generate_code

Code generation plugin module
manage_blocks

Plugin module for managing board blocks
chr_ply

Functional programming utilities
manage_links

Plugin module for managing board links
get_session

Shiny utilities
export_code

Utilities for code export
new_stack

Stacks
new_parser_block

Parser block constructors
new_text_block

Text block constructors
new_link

Board links
new_data_block

Data block constructors
new_plugin

Board plugin
new_board

Board
board_ctor

Board options
new_plot_block

Plot block constructors
new_file_block

File block constructors
register_block

Block registry
preserve_board

Serialization plugin module
stack_ui

Stack UI
generate_plugin_args

Testing utilities
notify_user

User notification plugin module
new_transform_block

Transform block constructors
serve

Serve object
is_acyclic.board

Graph utils
rand_names

Random IDs
set_names

Miscellaneous utilities
write_log

Logging
blockr_option

Blockr Options
board_blocks

Board utils
blockr_abort

Blockr conditions
is_scalar

Assertions
block_name

Block utilities
board_ui.board_options

Board UI
block_server

Block server
board_server

Board server
block_ui

Block UI
blockr_ser

Serialization utilities
edit_block

Plugin module for editing board blocks