FS
← Back
● MSc THESIS · Apr 2026

CWL Visual Workflow Editor

Low-code visual IDE for building, editing, and deploying CWL scientific pipelines — entirely web-based, no YAML required. Built as MSc thesis at University of Turin.

React 19TypeScriptReactFlowRedux ToolkitJestYAML
~3,100Parser Lines of Code
100%Round-trip Fidelity
5.02/7TAM Score
0Structural Runtime Errors

// Problem

Bioinformaticians and scientific researchers build reproducible computational pipelines using Common Workflow Language (CWL). But authoring CWL requires hand-writing verbose YAML — a painful, error-prone process that blocks non-engineers from contributing to pipeline design and makes structural errors invisible until runtime.

// Solution

A visual node-graph editor where each CWL step, tool, and connection is a draggable node on a canvas. The editor maintains full bidirectional fidelity: import any valid CWL YAML into the visual graph, edit visually, and export back to semantically equivalent YAML. Real-time type checking prevents structural errors before execution.

// Parser Pipeline

CWL YAMLAST Parser (~3,100 lines)Redux StateReactFlow CanvasYAML GeneratorCWL YAML

// Key Engineering Decisions

Bidirectional parser: ~3,100 lines of TypeScript parser and generator. Handles the full CWL v1.2 spec including scatter, multi-tool workflows, embedded tools, and secondary files. 100% semantic fidelity on round-trip.
Real-time type checking: Port-to-port connections are validated against CWL type compatibility rules before the edge is drawn. Prevents entire classes of structural errors from ever reaching execution.
ReactFlow + Redux integration: All graph state (nodes, edges, selections) lives in Redux. ReactFlow canvas reads from store. This makes undo/redo, import/export, and real-time sync trivial to implement.
StreamFlow deployment targets: One-click config generation for Docker, Kubernetes, HPC, and Slurm via StreamFlow integration. Users go from visual design to deployment config without writing a line.

// User Study

Conducted a formal Technology Acceptance Model (TAM) evaluation with domain experts — bioinformaticians and researchers who use CWL daily. The Behavioral Intention to Use score (5.02/7) indicates strong acceptance and willingness to adopt the tool in real workflows. Perceived Usefulness and Ease of Use both rated above the TAM acceptance threshold.

// Deployment Targets

DockerKubernetesHPCSlurmStreamFlow
CWL Visual Editor — System Overview

[01/03] — System overview: YAML import, visual editing, and export pipeline