SupportFlow is a conversational AI customer support system integrated with Twilio and Eleven Labs APIs, using Kafka and MongoDB for event streaming and backend storage. This repo contains the frontend of the project.
Our project is split across three repositories:
- Frontend (this repo) –
SupportFlow - Backend (Call History Service) –
Supportflow-backend - Kafka Module –
Supportflow-kafkamodule
Follow these steps in this exact order to get the project up and running locally:
cd C:\kafka\bin\windows
java -cp "C:\kafka\libs\*" org.apache.zookeeper.server.quorum.QuorumPeerMain C:\kafka\config\zookeeper.propertiescd C:\kafka\bin\windows
kafka-server-start.bat ..\..\config\server.propertiescd C:\Users\91727\Downloads\ngrok-v3-stable-windows-amd64
ngrok.exe http 8080Keep the terminal open and copy the forwarded https URL.
Clone and open the Supportflow-kafkamodule repo in Eclipse IDE.
Run the KafkaConsumer.java file as a Java application.
Open the Supportflow-kafkamodule repo in Eclipse.
Run the TwilioCallHandler.java Spring Boot application.
-
Go to the Eleven Labs Conversational AI dashboard
-
Navigate to Post-call Webhook Settings
-
Paste the ngrok URL copied earlier and add
/webhookat the endExample:
https://<your-ngrok-subdomain>.ngrok.io/webhook -
After saving, copy the Webhook Secret generated.
-
Open the
application.propertiesfile in the Kafka module and update the following keys:server.port=8080 elevenlabs.webhook.secret=your_generated_webhook_secret elevenlabs.api.key=your_elevenlabs_api_key elevenlabs.agent.id=your_elevenlabs_agent_id
Clone the Supportflow-backend repo.
Run the following command to start the Spring Boot application:
./mvnw spring-boot:runThis will start the backend service connected to MongoDB for storing and retrieving call history.
Clone this repo SupportFlow.
Install dependencies and run the dev server:
npm install
npm run devYour frontend is now live at http://localhost:3000
- Buy a Twilio Testing Number
- Link it with Eleven Labs
- Add sample knowledgebase & agent setup
- Make a test call to interact with the AI agent
The full pipeline from call → AI agent → webhook → Kafka → MongoDB → frontend is now active.
- Frontend: Typescript
- Backend: Spring Boot + MongoDB
- Streaming: Apache Kafka
- Dev Tools: Eclipse, VS Code, Ngrok
- Voice API: Twilio
- AI Voice: Eleven Labs
- SupportFlow (Frontend)
- Supportflow-backend (Call History Service)
- Supportflow-kafkamodule (Kafka Streaming)
For any questions or setup issues, reach out to [[email protected]] or [[email protected]]