{"id":31818823,"url":"https://github.com/vezlo/assistant-chat","last_synced_at":"2025-10-13T13:03:48.559Z","repository":{"id":318620335,"uuid":"1070840472","full_name":"vezlo/assistant-chat","owner":"vezlo","description":"Production-ready AI chat widget library and admin dashboard for SaaS applications with RAG integration","archived":false,"fork":false,"pushed_at":"2025-10-08T07:30:02.000Z","size":79,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-08T09:22:17.098Z","etag":null,"topics":["admin-dashboard","ai-chatbot","chat-widget","customer-support","embeddable-chat","knowledge-base","rag","react-component","saas","saas-bot","tailwind","vite"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vezlo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-06T14:02:43.000Z","updated_at":"2025-10-08T07:30:05.000Z","dependencies_parsed_at":"2025-10-08T09:22:19.746Z","dependency_job_id":"92e9c423-ed2d-46ec-94ff-0f557c91701d","html_url":"https://github.com/vezlo/assistant-chat","commit_stats":null,"previous_names":["vezlo/assistant-chat"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/vezlo/assistant-chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vezlo%2Fassistant-chat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vezlo%2Fassistant-chat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vezlo%2Fassistant-chat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vezlo%2Fassistant-chat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vezlo","download_url":"https://codeload.github.com/vezlo/assistant-chat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vezlo%2Fassistant-chat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279002541,"owners_count":26083399,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["admin-dashboard","ai-chatbot","chat-widget","customer-support","embeddable-chat","knowledge-base","rag","react-component","saas","saas-bot","tailwind","vite"],"created_at":"2025-10-11T11:18:10.317Z","updated_at":"2025-10-11T11:18:12.917Z","avatar_url":"https://github.com/vezlo.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vezlo Assistant Chat\n\n[![npm version](https://img.shields.io/npm/v/@vezlo/assistant-chat.svg)](https://www.npmjs.com/package/@vezlo/assistant-chat) [![license](https://img.shields.io/badge/license-AGPL--3.0-blue.svg)](https://opensource.org/licenses/AGPL-3.0)\n\nA complete chat widget solution with both a React component library and standalone admin application for AI-powered customer support.\n\n## What's Included\n\n### 📦 NPM Package\n- **Reusable React Widget**: Install via `npm install @vezlo/assistant-chat`\n- **TypeScript Support**: Full type definitions included\n- **Customizable**: Themes, colors, positioning, and behavior\n- **Real-time Streaming**: Live AI responses with streaming support\n- **Style Isolation**: Shadow DOM support for conflict-free integration\n- **📖 [Complete Package Documentation](PACKAGE_README.md)**\n\n### 🖥️ Standalone Application\n- **Admin Dashboard**: Configure widgets with live preview\n- **Playground**: Test widgets in isolated environment\n- **Embed Code Generator**: Get ready-to-use embed codes\n- **Docker Support**: Easy deployment with Docker Compose\n- **Vercel Ready**: One-click deployment to Vercel\n\n## Quick Start\n\n### For Developers (NPM Package)\n\n```bash\nnpm install @vezlo/assistant-chat\n```\n\n```tsx\nimport { Widget } from '@vezlo/assistant-chat';\n\nfunction App() {\n  const config = {\n    uuid: 'your-widget-uuid',\n    title: 'AI Assistant',\n    themeColor: '#10b981',\n    // ... other config\n  };\n  \n  return \u003cWidget config={config} /\u003e;\n}\n```\n\n**📖 [Complete NPM Package Documentation](PACKAGE_README.md)**\n\n### For Administrators (Standalone App)\n\nThis repository also contains a standalone admin application for configuring and managing widgets.\n\n```bash\n# Clone and run the standalone app\ngit clone https://github.com/vezlo/assistant-chat.git\ncd assistant-chat\nnpm install\nnpm run dev\n```\n\n**Features:**\n- Admin dashboard for widget configuration\n- Live preview and playground\n- Embed code generation\n- Docker and Vercel deployment support\n\n## Prerequisites\n\n- **Assistant Server**: Both components require a running Assistant Server\n- Node.js 18+ and npm\n- React 18+ (for package usage)\n\n## Features\n\n### Package Features\n- ✅ React component library\n- ✅ TypeScript support\n- ✅ Tailwind CSS styling\n- ✅ Real-time streaming\n- ✅ Customizable themes\n- ✅ Shadow DOM support\n- ✅ API integration included\n\n### App Features\n- ✅ Admin dashboard\n- ✅ Live widget preview\n- ✅ Playground testing\n- ✅ Embed code generation\n- ✅ Multiple widget management\n- ✅ Docker support\n- ✅ Vercel deployment\n\n## Deployment Options\n\n### Package (NPM)\n```bash\nnpm run build\nnpm pack  # Test locally\nnpm publish  # Publish to NPM\n```\n\n### App (Vercel)\n\n#### One-Click Deploy\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/vezlo/assistant-chat)\n\n#### Manual Vercel CLI Deployment\n```bash\n# Install Vercel CLI\nnpm i -g vercel\n\n# Deploy from local directory\nvercel\n\n# Set environment variables (required)\nvercel env add VITE_ASSISTANT_SERVER_URL\nvercel env add VITE_ASSISTANT_SERVER_API_KEY\n\n# Optional environment variables\nvercel env add VITE_DEFAULT_USER_UUID\nvercel env add VITE_DEFAULT_COMPANY_UUID\nvercel env add VITE_WIDGET_DEFAULT_THEME\nvercel env add VITE_WIDGET_DEFAULT_POSITION\nvercel env add VITE_WIDGET_DEFAULT_SIZE\n\n# Deploy to production\nvercel --prod\n```\n\n### App (Docker)\n```bash\ndocker-compose up\n```\n\n## Repository Structure\n\nThis repository contains both the NPM package and standalone application:\n\n```\nassistant-chat/\n├── src/\n│   ├── components/Widget.tsx    # Main widget component (used by both)\n│   ├── api/                     # API services\n│   ├── types/                   # TypeScript definitions\n│   ├── utils/                   # Utility functions\n│   ├── config/                  # Configuration\n│   └── routes/                  # Standalone app pages\n├── public/\n│   └── widget.js               # Embed script\n├── docs/                       # Documentation\n├── README.md                   # This file (project overview)\n├── PACKAGE_README.md           # NPM package documentation\n└── package.json                # Package configuration\n```\n\n### How It Works\n\n- **Same Widget Code**: Both the NPM package and standalone app use the same `Widget.tsx` component\n- **NPM Package**: Publishes the widget component as a reusable library\n- **Standalone App**: Uses the widget component directly for admin interface and playground\n- **No Duplication**: Single source of truth for the widget component\n\n## Architecture\n\n```\n┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐\n│   Codebase      │───▶│   src-to-kb     │───▶│ Knowledge Base  │\n│   (Your Code)   │    │   (Analysis)    │    │   (Vector DB)   │\n└─────────────────┘    └─────────────────┘    └─────────────────┘\n                                                        │\n                                                        ▼\n┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐\n│  Chat Widget    │◄───│ Assistant Server│◀───│   AI Queries    │\n│  (This Package) │    │   (Backend)     │    │   (RAG System)  │\n└─────────────────┘    └─────────────────┘    └─────────────────┘\n```\n\n## Knowledge Base Integration\n\nTo enable AI-powered code analysis and intelligent responses, integrate with [@vezlo/src-to-kb](https://www.npmjs.com/package/@vezlo/src-to-kb):\n\n```bash\nnpm install -g @vezlo/src-to-kb\nsrc-to-kb /path/to/your/codebase --output ./knowledge-base\n```\n\nThe Assistant Server will automatically use this knowledge base to provide intelligent answers about your codebase.\n\n## API Integration\n\nFor detailed API integration documentation, see [API Integration Guide](docs/API_INTEGRATION.md).\n\n## Related Projects\n\n- [@vezlo/assistant-server](https://www.npmjs.com/package/@vezlo/assistant-server) - Backend API server\n- [@vezlo/src-to-kb](https://www.npmjs.com/package/@vezlo/src-to-kb) - NPM package for code analysis\n- [@vezlo/ai-validator](https://www.npmjs.com/package/@vezlo/ai-validator) - AI validation tools\n\n## Contributing\n\nWe welcome contributions! Please see our contributing guidelines:\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Commit your changes**: `git commit -m 'Add amazing feature'`\n4. **Push to the branch**: `git push origin feature/amazing-feature`\n5. **Open a Pull Request**\n\n### Development Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/vezlo/assistant-chat.git\ncd assistant-chat\n\n# Install dependencies\nnpm install\n\n# Start development server\nnpm run dev\n\n# Build the package\nnpm run build\n```\n\n## Issues \u0026 Support\n\n- **Package Issues**: [Assistant Chat Issues](https://github.com/vezlo/assistant-chat/issues)\n- **Server Issues**: [Assistant Server Issues](https://github.com/vezlo/assistant-server/issues)\n- **General Questions**: [Assistant Server Discussions](https://github.com/vezlo/assistant-server/discussions)\n\n## 📄 License\n\nThis project is dual-licensed:\n\n- **Non-Commercial Use**: Free under AGPL-3.0 license\n- **Commercial Use**: Requires a commercial license - contact us for details\n\n---\n\nMade with Love by [Vezlo](https://www.vezlo.org/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvezlo%2Fassistant-chat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvezlo%2Fassistant-chat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvezlo%2Fassistant-chat/lists"}