Skip to content

Instantly share code, notes, and snippets.

@dep
Last active March 16, 2026 21:07
Show Gist options
  • Select an option

  • Save dep/358119b65206f7a2b16a6b971a824453 to your computer and use it in GitHub Desktop.

Select an option

Save dep/358119b65206f7a2b16a6b971a824453 to your computer and use it in GitHub Desktop.

React Node-Based Canvas Libraries β€” 2026 Research

Context: Researching options for a constrained node-based WYSIWYG workflow UI builder for non-technical users (agent actions: CRM routing, dynamic API lookups, calendar links). Hack Start sprint planned for April 6–10.


πŸ₯‡ React Flow (xyflow)

Repo: https://github.com/xyflow/xyflow
Site: https://reactflow.dev
License: MIT (free)
npm: reactflow / @xyflow/react

βœ… Pros

  • Most widely-adopted React node canvas library β€” largest community & ecosystem
  • Fully customizable nodes and edges β€” any React component can be a node
  • Built-in drag-and-drop, zoom/pan, undo/redo
  • Virtualization + smart rendering handles hundreds of nodes efficiently
  • Documented real-world use cases: workflow builders, chatbot UIs, AI agent builders
  • Active maintenance and strong 2026 dev survey results
  • Layout algorithm integrations (Dagre, ELK)
  • MIT licensed β€” truly free

❌ Cons

  • More flexible than opinionated β€” you have to build the constraints yourself (actually fine for our use case)
  • Pro plan exists for some advanced features (subflows, collaboration) β€” but core is solid free
  • Can feel like "too much rope" for very beginner devs building node types

🎯 Verdict for UI

Strong fit. The constraint layer (limited node types, guided templates, static action list) would be built on top β€” React Flow just handles the canvas. Best combination of flexibility + community support.


πŸ₯ˆ Reaflow (reaviz)

Repo: https://github.com/reaviz/reaflow
License: Apache 2.0
npm: reaflow

βœ… Pros

  • Built-in automatic layout via ELKJS β€” great for tree/DAG-style flows
  • Clean Node/Edge/Port API β€” straightforward to customize
  • Supports nested nodes and proximity-based linking
  • Good for structured, top-down workflow layouts
  • Zoom, pan, drag-and-drop all included

❌ Cons

  • Smaller community than React Flow β€” less documentation, fewer examples
  • Less actively maintained (React Flow has it beat here)
  • Fewer customization options for complex visual styles
  • Layout auto-algorithm is great but may fight you if you want freeform canvas

🎯 Verdict for Polaris UI

Decent second option. If the team wants an opinionated top-down layout (like a decision tree), ELKJS auto-layout could actually be a feature. But React Flow + Dagre would likely cover this too.


πŸ₯‰ Flume

Site: https://flume.dev
License: MIT
npm: flume

βœ… Pros

  • Unique approach: models logic as a JSON graph with typed ports (color-coded, type-safe connections)
  • Ships with both a visual editor UI AND a runtime engine β€” run your graphs anywhere (browser, server)
  • 60fps+ performance β€” bypasses React renders for drag/zoom/pan
  • Designed specifically for business logic as visual graphs β€” very aligned with agent action routing
  • Graphs export as JSON β€” easy to store and execute

❌ Cons

  • Smaller community, less maintained (latest npm: v1.0.4)
  • Known issues with Next.js v13/v14 (right-click context menu bugs)
  • Less flexible for purely visual/non-executable diagrams
  • Less active development than React Flow

🎯 Verdict for UI

Interesting dark horse. The typed ports and built-in execution engine are genuinely compelling for agent routing logic. Worth a look during Hack Start week as a prototype candidate β€” especially if the backend needs to execute the graph logic directly.


Sequential Workflow Designer

Repo: https://github.com/nocode-js/sequential-workflow-designer
License: MIT
npm: sequential-workflow-designer

βœ… Pros

  • Framework-agnostic (React, Angular, Svelte, vanilla JS)
  • Purpose-built for sequential/conditional workflow UIs
  • No dependencies
  • Highly constrained by design β€” perfect for non-technical users
  • Built-in step types: tasks, switches, loops

❌ Cons

  • Strictly sequential β€” not a freeform canvas (no arbitrary node placement)
  • Limited to linear/conditional flows β€” no complex graph topologies
  • Less visual polish than React Flow
  • Smaller community

🎯 Verdict for UI

Worth considering if the UX is top-down/sequential. If the open question of "horizontal swimlanes vs vertical tree" resolves to a linear flow, this could be the most user-friendly option for non-technical users.


πŸ“Œ Summary Table

Library Flexibility Community Auto-Layout Execution Engine Best For
React Flow β˜…β˜…β˜…β˜…β˜… β˜…β˜…β˜…β˜…β˜… Via plugins ❌ General canvas builder
Reaflow β˜…β˜…β˜…β˜†β˜† β˜…β˜…β˜…β˜†β˜† β˜…β˜…β˜…β˜…β˜… (ELK) ❌ Tree/DAG workflows
Flume β˜…β˜…β˜…β˜†β˜† β˜…β˜…β˜†β˜†β˜† ❌ βœ… Built-in Logic graph + execution
Seq. Workflow Designer β˜…β˜…β˜†β˜†β˜† β˜…β˜…β˜…β˜†β˜† βœ… Sequential ❌ Linear flows, non-tech users

πŸš€ Recommendation for Hack Start (April 6–10)

Start with React Flow. It's the safest bet β€” largest community, most examples for exactly this use case (workflow builders, AI agent UIs), and MIT licensed. The constraint layer (static node types, guided templates) is something you build on top, not something the library needs to provide.

Prototype with Flume if the team wants to explore a typed-port execution model where the graph logic itself runs on the backend β€” that's a genuinely different and interesting architecture.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment