Skip to content

GSoC'26 Problem Statement Proposal: Visual Data Input & Execution Debugger for Template Playground #479

@Rahul-R79

Description

@Rahul-R79

Visual Layer for Smart Legal Contracts (Playground Debugger)

The current Template Playground presents a significant usability barrier for non-technical users ("Legal Engineers"). To test a Smart Legal Contract, users must manually edit a raw JSON object (e.g., manually typing "$class": "...", "quantity": 3) to simulate input data. Furthermore, the execution of contract logic remains a "black box"—users see the final output but lack transparency into how the logic processed the data (e.g., knowing which specific conditions triggered a penalty). I propose implementing a "Visual Layer" that includes a Dynamic Form Generator to abstract away raw JSON and a Visual Execution Trace to debug contract logic.

Proposed UI Concept:

(Note: The image above is a conceptual mock-up generated to showcase the proposed "Dynamic Form" and "Visual Trace" layout. The actual implementation will be built from scratch to match the Accord Project design system.)
Image

Expected Outcomes:

A tool that allows users to:

  • Automatically generate a user-friendly input form from any active Concerto Model (.cto), mapping primitives like Integer or DateTime to UI inputs instead of JSON.
  • Run a contract "Test" that simulates a Request/Response cycle without touching code.
  • Visualize the execution flow of the contract logic (e.g., via a flowchart or step-by-step trace) to see which clauses were active types.
  • Inspect the final state of contract variables (e.g., calculatedPenalty, status) in a dedicated panel.
  • Bidirectionally sync data: updates in the Form automatically update the underlying JSON.

Skills required/preferred:

React, TypeScript, Tailwind CSS, AST Traversal (Concerto), State Management (Zustand), Visualization Libraries (e.g., React Flow)

Possible Mentors:

TBD

Expected size of project:

350 hours (Large)

Expected difficulty:

Medium

Tag: GSoC'26 Problem Statement Proposal

Metadata

Metadata

Assignees

No one assigned

    Labels

    maintainer-engagedA maintainer has commented or reviewed this item

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions