Smash Chat Configuration
Learn how to configure the Smash AI Chat widget for your environment.
Overview
The Smash widget is configured primarily through environment variables and component props. This allows for easy adjustment of API endpoints, widget IDs, and initial behavior.
Environment Variables
Update your .env.local file with the following settings:
NEXT_PUBLIC_SMASH_API_URL: The base URL of the LibreApps Gateway or the AI Chat Server.NEXT_PUBLIC_SMASH_WIDGET_ID: A unique identifier for your chat widget instance.NEXT_PUBLIC_SMASH_THEME: (Optional) The default theme for the widget (light,dark, orsystem).
Component Props
You can also pass configuration directly to the SmashChatWidget component:
<SmashChatWidget
title="AI Assistant"
initialMessage="Hello! How can I help you today?"
position="bottom-right"
showIcon={true}
/>
Available Props
- title: The header text of the chat window.
- initialMessage: The first message shown to the user.
- position: Where the widget appears (
bottom-right,bottom-left). - showIcon: Whether to show the floating chat icon.
Backend Configuration
The widget expects the backend to support the following endpoints:
POST /api/chat/stream: For real-time message streaming.GET /api/chat/history: To retrieve previous conversation turns.
Best Practices
- ✅ Do this: Use environment variables for API URLs to ensure they change correctly between development and production.
- ✅ Do this: Provide a helpful
initialMessageto guide users on how to interact with the AI. - ❌ Don't do this: Hardcode the
widgetIdin your components; use an environment variable instead.