Vapi Integration Starter Template
This starter template is designed to help you quickly integrate Vapi into your project. It showcases a bot that assists authors in defining characters for their stories, demonstrating the ease of integrating Vapi to manipulate the frontend, display backend results, and leverage other capabilities.
- Real-time Interaction: Interact with the bot in real-time to refine character traits and details.
- Message Handling: Send and receive messages to and from the bot, handling different message types.
- Audio Level Visualization: Visual feedback on the audio level during bot interaction.
- Event Handling: Start, stop, and toggle bot calls with proper event management.
- Clone the repository.
- Install dependencies with npm install.
- Set up your .env file with the required Vapi tokens.
- Run the development server with npm run dev.
- Vapi SDK: Integrated via vapi.sdk.ts to manage the Vapi instance.
- React Hooks: useVapi.ts to encapsulate Vapi logic within React components.
- Event Listeners: Set up listeners for various Vapi events like speech start/end, call start/end, and message updates.
- Message Components: Render messages and transcripts in real-time as they are received from the bot.
- Character Details: Edit and save character details, which are then sent as messages to the bot for processing.
- src/: Source files for the application.
- src/features/Assistant/: Components and hooks related to Vapi integration.
- src/features/Character/: Components for character details and manipulation.
- src/lib/: Shared types and utility functions.
- src/components/ui/: Reusable UI components.
You can customize the bot's behavior and appearance by modifying the character.assistant.ts and the corresponding React components.