webofbits
Helix - Visual AI Agent Workflow Designer
Helix is a visual workflow designer for AI agents and multi-agent systems, built with Phoenix and React Flow. It provides an intuitive drag-and-drop interface for planning and designing multi-agent workflows, with real-time collaboration powered by websockets.
Note: Helix is an early-stage project in active development. Current functionality is limited, with workflows stored in
localStorage. It is not yet feature-complete.
I’m sharing this work hoping to gather some early feedback.
Key Features
-
Node-based workflow design with customizable nodes and connections
-
Real-time multi-user collaboration via Phoenix Channels (doesn’t have proper user management or access controls – I am working on designing the data model)
-
Modern UI with light/dark themes and responsive design
-
Workflow management (save, load, duplicate) with local persistence.
-
Export to PNG
Future Plans
The primary goal is to use Helix for AI workflow planning and later add a JSON/DSL export to be used with other libraries that could provide execution. In the long term, I could add some execution for testing purposes but that’d come with its own complexity thus for the time being I am just focusing on the diagramming aspect.
Tech Stack
-
Backend: Elixir 1.17+, Phoenix, PostgreSQL
-
Frontend: React, TypeScript, React Flow, TailwindCSS
-
Real-time: Phoenix Channels with GenServer session management
-
Testing: ExUnit, Jest, Playwright
Notes
I’m aware this project does not use LiveView, which is often the preferred approach in the Elixir community. If React is not of interest here, I completely understand. That said, I’d especially value JavaScript/React feedback from those familiar with the ecosystem.
Currently, workflows are for planning and design only (not executable yet).
Requirements
-
Elixir 1.17+
-
Node.js 18+
-
PostgreSQL 14+
Links
-
Hex: Not yet published
-
Documentation: Available in README
Most Liked
BartOtten
bartblast
Good point! If there’s specific JS library integration needed, it’s probably worth waiting for the JS interop that’s coming soon. But besides that, the charts and the whole UI could actually be implemented in pure Elixir if you choose to go that route.
No need to leave the “fast UI bits” to JS when you can handle dragging, animations, and all the interactive parts directly in Elixir on the client side ![]()
Jskalc
I can share my 2 cents here. I’m the author of live_vue library, and I’m mixing live views with frontend frameworks on a daily basis for more than a year ![]()
All in all, LiveView plays nicely with JS frameworks when instead of rendering HTML it synchronizes top-level props to the frontend component and handles selected client-side events in the same way as in a regular LiveView. That way you get both of two world - your live view handles routing, data fetching and updates, and your frontend handles client-side state, rich interactivity and is free to use any library from a selected ecosystem. You might want to read that post.
Personally I’ve built entire SaaS product https://postline.ai that way - each of my live views renders just a single vue component. It’s similar to IntertiaJS, but uses LiveView behind the scenes.
There’s also live_svelte and live_react. I think my library is the most feature-complete, but since your frontend is written in react it might be the easiest to migrate.
Good luck, hopefully it will be useful!
bartblast
I think there might be a small misunderstanding about how Hologram works. You don’t need to use macros or learn DSL at all. Hologram lets you write regular Elixir code that gets transpiled to JavaScript - so you’re working with pure Elixir.
The JS interop page I mentioned is specifically for interfacing with existing JavaScript libraries client-side when you need them, but the core framework doesn’t require any JS knowledge.
Speaking of workflow builders, Aldous Waites built a great Hologram interactive demo with snappy, draggable graph nodes that showcases how smooth client-side interactions feel in Hologram. The implementation is surprisingly clean - what would require complex JavaScript coordination in traditional approaches becomes straightforward Elixir code.
Since you’re working on a visual workflow designer, this demo might be relevant to show what’s possible with Hologram for that kind of interactive UI! The dragging, real-time updates, and visual feedback all happen smoothly on the client side, written entirely in Elixir.

webofbits
React’s complexity ramps up fast. Not so much in building UIs—that part’s fine—but once backend auth and coordination come in, things get heavy.
I’m considering giving LiveView a try. By cutting most of the frontend-backend communication, it could make handling complexity much simpler. I’d keep React Flow in play through LiveView hooks.









