A Chatbot flow is built by connecting multiple messages together to decide the order of execution.
React.Flow.Demo.mp4
This project is focused on building a simple Chatbot Flow Builder using React. The goal is to create a tool that allows users to visually construct the flow of a chatbot by connecting messages together, determining the sequence of interactions. The design aims for extensibility, facilitating the easy addition of new features and node types in the future.
- Functionality: The flow builder currently supports Text Messages as the primary node type. This allows for the creation of basic chatbot dialogue flows.
- Multiplicity: Users can add multiple Text Nodes to a single flow.
- Interaction: Nodes are added to the flow through a drag-and-drop interface from the Nodes Panel.
- Purpose: The Nodes Panel serves as the repository for all types of nodes supported by the Flow Builder.
- Extensibility: Although only the Text Message Node is available at present, the panel is designed to accommodate additional node types in future updates.
- Description: Edges are used to connect two nodes, indicating the flow of conversation from one message to the next.
- Functionality: Represents the starting point of an edge.
- Constraint: Each source handle can originate only one edge.
- Functionality: Represents the endpoint of an edge.
- Flexibility: A single target handle can have multiple incoming edges.
- Contextual Display: The Settings Panel appears in place of the Nodes Panel when a node is selected.
- Features: It includes a text field for editing the content of the selected Text Node.
-
Purpose: Allows users to save the current state of the chatbot flow.
-
Validation: Pressing the save button will trigger an error if the flow includes more than one node and any node (beyond the first) has empty target handles.
To set up UnstopFrontend locally, follow these steps:
-
Clone the repository:
git clone https://github.com/sum1275/Chatbot-flow-builder.git
-
Setup and Run: To set up and run the Unicarta project, follow these commands:
npm install npm run dev
This Chatbot Flow Builder project represents a foundational step towards creating advanced, interactive chatbots. By focusing on a modular design and extensibility, it lays the groundwork for future enhancements, including the introduction of new node types and functionalities.