Files
2026-07-13 12:58:18 +08:00

141 lines
3.1 KiB
Markdown

# CopilotKit Chat Playground
A visual playground for customizing CopilotKit chat components. Adjust colors, fonts, and text, then export production-ready code.
![Demo Gif](docs/demo.gif)
## Overview
This tool lets you customize CopilotKit chat appearance with a live preview and export the code when you're done. Useful for designers and developers who want to integrate AI chat into their applications.
## Getting Started
### Prerequisites
- Node.js 18+
- npm, pnpm, yarn, or bun
- OpenAI API key (for the live preview agent)
### Installation
```bash
npm install
```
The postinstall script sets up the Python agent automatically.
### Running Locally
```bash
npm run dev
```
This starts the UI on `localhost:3000` and the agent on `localhost:8123`. Open your browser to `http://localhost:3000`.
## How It Works
1. Adjust settings in the left panel (colors, fonts, text, spacing)
2. See changes in real-time in the center preview
3. Click "Export Code" when finished
4. Copy the generated files into your project
The export includes:
- `MyChat.tsx` - Your customized chat component
- `layout.tsx` - CopilotKit wrapper
- `route.ts` - API route
- `.env.local` - Environment variables template
## Available Scripts
- `npm run dev` - Start UI and agent
- `npm run dev:ui` - Start UI only
- `npm run dev:agent` - Start agent only
- `npm run build` - Build for production
- `npm run start` - Run production build
## Project Structure
```
src/
├── app/
│ ├── page.tsx # Main playground
│ ├── layout.tsx # Root layout
│ ├── preview/ # Preview iframe
│ └── api/copilotkit-preview/ # Preview API
├── components/
│ ├── playground/
│ │ ├── PlaygroundContainer.tsx
│ │ ├── SettingsPanel.tsx
│ │ ├── PreviewPanel.tsx
│ │ ├── CodeExporter.tsx
│ │ └── AgentSetupModal.tsx
│ └── ui/ # shadcn/ui components
├── hooks/
│ └── usePlaygroundConfig.ts
├── types/
│ └── playground.ts
└── utils/
└── codeGenerator.ts
agent/
├── agent.py
├── langgraph.json
├── requirements.txt
└── .env
```
## Troubleshooting
### Preview not loading
The preview needs the agent running. Check:
- Agent is running on port 8123
- OpenAI API key is set in `agent/.env`
- No console errors in browser
### Agent won't start
Reinstall Python dependencies:
```bash
cd agent
rm -rf .venv
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```
### Module not found
Reinstall node dependencies:
```bash
rm -rf node_modules package-lock.json
npm install
```
### Port in use
Kill the process or use a different port:
```bash
lsof -ti:3000 | xargs kill
# or
PORT=3001 npm run dev:ui
```
## Documentation
- [CopilotKit](https://docs.copilotkit.ai)
- [LangGraph](https://langchain-ai.github.io/langgraph/)
- [Architecture Details](./PLAYGROUND.md)
## License
MIT
Demo built by Mark Morgan in collaboration with CopilotKit Team.
Mark Morgan LinkedIn: https://www.linkedin.com/in/markmdev/