Chattie is a modern team communication platform built with SvelteKit, combining Slack-like features with advanced AI capabilities for enhanced collaboration.
- 💬 Real-time messaging with WebSocket
- 📂 Channels and direct messages
- 🧵 Thread support
- 📎 File sharing and search
- 👋 User presence and status
- 😀 Emoji reactions
- 🤖 Intelligent message summarization
- 🗣️ Speech synthesis and voice messages
- 👤 Facial animation for avatars
- 🎯 Context-aware responses
- 🔍 AI-powered search
- 💡 Smart suggestions
- SvelteKit
- TailwindCSS
- Socket.io-client
- MediaPipe (facial animation)
- Node.js
- WebSocket
- PostgreSQL + Prisma
- Redis (caching)
- LangChain
- Pinecone (vector DB)
- OpenAI API
- ElevenLabs (voice synthesis)
chattie/
├── src/
│ ├── lib/
│ │ ├── components/
│ │ │ ├── chat/ # Message components
│ │ │ ├── channels/ # Channel management
│ │ │ ├── ai/ # AI components
│ │ │ └── shared/ # Common UI elements
│ │ ├── stores/ # Svelte stores
│ │ ├── services/ # API and WebSocket
│ │ └── utils/ # Helper functions
│ ├── routes/
│ │ ├── api/ # API endpoints
│ │ ├── channels/ # Channel routes
│ │ └── dm/ # Direct message routes
│ └── app.html
├── static/ # Static assets
├── tests/ # Test suite
└── prisma/ # Database schema
- Clone the repository:
git clone https://github.com/yourusername/chattie.git
cd chattie
- Install dependencies:
npm install
- Set up environment variables:
cp .env.example .env
- Start development server:
npm run dev
- Configure API keys in
.env
:
OPENAI_API_KEY=your_key_here
ELEVENLABS_API_KEY=your_key_here
PINECONE_API_KEY=your_key_here
- Initialize AI services:
// src/lib/services/ai/setup.ts
import { initLangChain, initPinecone, initVoiceSynthesis } from './ai';
export async function setupAI() {
await Promise.all([
initLangChain(),
initPinecone(),
initVoiceSynthesis()
]);
}
- Message vectorization for semantic search
- Thread summarization
- Smart suggestions based on conversation context
- Real-time voice synthesis
- Facial animation for avatars
- Speech-to-text for voice messages
- AI-powered message search
- Channel recommendations
- Content categorization
- Create feature branch:
git checkout -b feature/your-feature
- Make changes and test:
npm run test
- Submit PR for review
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
This updated README provides a clearer structure, better documentation of AI features, and a more practical getting started guide. It maintains focus on both the communication platform aspects and the AI integration while providing concrete implementation details.Â