Monitoring & Controlling · May 11, 2026

CoBlockly

CoBlockly is a block-based visual modeling solution designed for defining compliance rules in terms of blockchain characterizations. The main advantage of this tool is that it abstracts the underlying CoBlock DSL into an intuitive “drag-and-drop” interface, allowing auditors to focus on compliance logic without requiring deep programming expertise.

This enables a comprehensive framework where visually modeled rules are automatically compiled and checked against smart contract execution data. CoBlockly has been integrated into an end-to-end pipeline and validated through user-centric assessments and performance evaluations to ensure its effectiveness in real-world DApp auditing.

Getting Started

Installation with Docker

Prerequisites

– Docker installed on your system.

Commands

1. Build the Docker image:

docker build -t coblockly .

2. Run the Docker container:

docker run -p 8000:8000 coblockly

3. Open the local application instance at:

http://0.0.0.0:8000/

Manual installation

Prerequisites

– Node.js
– Python

Commands

Frontend stage:

1. Install all Node.js required packages:

./frontend npm i

2. Start the frontend:

./frontend npm run dev

Backend stage:

1. Install all Python requirements:

./backend pip install -r requirements.txt

2. Run the Pyhton backend via Uvicorn:

./backend uvicorn app:app --reload

3. Open the local application instance at:

http://localhost:5173/

Usage

1. First, the user must upload an Blockchain Log. Once loaded, information about the chosen log are displayed in the dedicated panel.

2. The second step is the selection of the mapping between the blockchain log columns and blockchain elements.

3. At this point, the user can start modeling the blockchain rule using the CoBlockly visual environment to drag-and-drop blocks representing rule elements into the canvas.

4. Once visually modeled, the rule is translated into the corresponding textual rule built on the underlying domain-specific language, CoBlock.

5. Finally, the rule is ready to be checked against the loaded blockchain log, and the results are summarized and previewed in the dedicated panel.

Evaluation

Following are the instructions to replicate the CryptoKitties analysis:

  1. Load the CryptoKitties blockchain log from https://bitbucket.org/proslabteam/coblock/src/coblockly/data/CK.xes
  2. Select the following mapping for the blockchain log:
    Function: functionName
    Events: events
    Internal Txs: internalTxs
    (n.b. this is the minimal set in order to replicate the experiment)
  3. Model the visual compliance rule as defined in Figure 3
  4. Translate the rule into the textual form, and parse it to check for correctness
  5. Run the rule-engine to check the modeled rule against the loaded blockchain log