A Flow-based Chatbot Builder built using React Flow and Next.js. This visual tool allows users to create, connect, and configure chatbot conversation flows using custom draggable nodes.
- Drag-and-Drop Nodes: Build conversations visually with drag-enabled text nodes.
- Editable Nodes: Modify node content dynamically via a settings panel.
- Flow Canvas: Zoomable, pannable, and responsive React Flow canvas.
This project is built using:
- Next.js β React framework. (Recommended by React)
- @xyflow/react (React Flow) β Interactive flow canvas rendering.
- Tailwind CSS β Utility-first CSS framework for rapid UI development.
- TypeScript β Type-safe development experience.
- VS Code β IDE.
- npm β Package manager.
chatbot-flow-builder/
βββ app/
βββ components/
β βββ flow/
β β βββ DnDContext.tsx
β β βββ FlowBuilder.tsx
β β βββ FlowCanvas.tsx
β β βββ index.ts
β βββ nodes/
β β βββ TextNode.tsx
β β βββ index.ts
β βββ panels/
β β βββ NodesPanel.tsx
β β βββ SettingsPanel.tsx
β β βββ index.ts
βββ data/
β βββ initialData.ts
β βββ index.ts
βββ hooks/
β βββ useFlowBuilder.ts
β βββ index.ts
βββ lib/
β βββ constants.ts
β βββ nodeFactory.ts
β βββ index.ts
βββ types/
β βββ flow.ts
β βββ index.ts
βββ public/
β βββ favicon.ico
βββ tailwind.config.js
βββ tsconfig.json
βββ package.json
βββ README.md
Follow these steps to set up the project locally:
Make sure you have the following installed:
- Node.js: https://nodejs.org
- npm
git clone https://github.com/guru-bandike/simple-flow
cd simple-flow
npm install
npm run dev
The app will be available at http://localhost:3000
This project is licensed under the MIT License.