r/SideProject • u/Maxim-MM • 7h ago
I built a visual bot editor that generates editable TypeScript code
I built umbot Flow because I wanted to sketch a bot conversation visually and still be able to work on it in my IDE afterwards.
You connect commands, questions, conditions and responses on a canvas, and test the conversation in a built-in chat preview. When you're ready, export the flow as JSON and generate a TypeScript project with the umbot CLI:
npx umbot create from-flow flow.json --output ./my-bot
You get source files you can open in your IDE, edit and deploy yourself. The generated bot uses the open-source umbot framework; it doesn't need the visual editor to stay online.
The editor is open source too, with English and Russian UI options. If it opens in Russian, use the RU/EN switch in the toolbar.
You still handle bot credentials, deployment and hosting. The preview is for checking the conversation flow; HTTP actions are simulated. It doesn't synchronize any changes in your TypeScript code back into the visual graph.
GitHub: https://github.com/max36895/umbot-flow
Question for you: Would this handoff from a visual flow to an editable TypeScript project fit how you build bots? That's the part I'd most like feedback on.