A visual drag-and-drop interface to build chatbot flows using @xyflow/react (React Flow). Users can create, connect, and configure custom nodes to design conversational experiences.
- 📌 Drag and drop custom nodes onto the canvas
- 🔗 Connect nodes visually
- 📝 Edit node labels/messages
- 🗑️ Delete selected nodes/edges with
Delete
- 📂 Save button for exporting or processing flows
- 🧙♂️ Extendable node system via a central registry
- 🧘🎨 Built with TailwindCSS + ShadCN UI for clean UI
- React with TypeScript
- @xyflow/react (React Flow)
- Tailwind CSS
- ShadCN UI
- Lucide Icons
- Sonner Toasts
git clone https://github.com/yourusername/chatbot-flow-builder.git
cd chatbot-flow-builder
pnpm install
# or
npm install
# or
yarn install
pnpm dev
# or
npm run dev
# or
yarn dev
To add new nodes:
-
Edit
NodeRegistry.ts
-
Provide:
label
component
defaultData
export const NODE_TYPES = {
text: {
label: "Text Message",
component: TextNode,
defaultData: { label: "Hi there!" }
},
...
};
Thanks to: