PopChat is a real-time chat application that leverages multiple AI language models to provide intelligent conversations. Built with Next.js 14, TypeScript, and Tailwind CSS, it offers a seamless and responsive user experience with support for multiple AI models. It currently integrates with Replicate to suppor deepseek-ai/deepseek-r1, meta/meta-llama-3-70b and google-deepmind/gemma-7b.
The main chat interface showing the conversation with AI model responses and markdown support
Model selection interface with detailed information about each AI model
Sidebar showing chat history with delete functionality
Detailed model information and processing metrics for each response
Secure Google authentication interface
🤖 Multiple AI Model Support
🔒 Secure Authentication
💬 Chat Capabilities
📊 Detailed Model Information
🎨 UI/UX
Clone the repository:
git clone https://github.com/popand/popchat.git
cd popchat
Install dependencies:
npm install
Create a .env
file in the root directory with the following variables:
```env
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
REPLICATE_API_TOKEN=your_replicate_api_token
4. Run the development server:
```bash
npm run dev
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /chats/{chatId} {
allow read, write: if request.auth != null && request.auth.uid == resource.data.userId;
}
}
}
The application can be easily deployed to Vercel:
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)This project is licensed under the MIT License - see the LICENSE file for details.
Project Link: https://github.com/popand/popchat