Free & Open-Source Multi-AI Platform - Chat with 100+ AI models including cloud APIs and local Ollama models, all in one place!
- 100+ Free AI Models - Use OpenRouter's free tier
- Premium Models - Access Claude 3.5, GPT-4o, and more with your own keys
- Multiple Providers - OpenRouter, Google Gemini, Mistral, and more
- Real-time Streaming - Watch responses generate character by character
- Ollama Integration - Run models locally on your machine
- Privacy First - No data leaves your device
- Cost-Free - Use free local models like Llama, Mistral, Qwen
- Auto-Discovery - Automatically import all your Ollama models
- Provider-agnostic Architecture - Use local models with the same interface as cloud models
- WCAG 2.1 Compliant - Built with accessibility best practices
- Keyboard Navigation - Fully navigable via keyboard
- Skip Link - Bypass navigation to reach main content quickly
- ARIA Standards - Proper roles and labels for screen readers
- Reduced Motion - Respects system-level motion preferences
- High Contrast Support - Optimized for high contrast modes
- Chat Persistence - Save conversations to PostgreSQL database
- Multi-Model Chat - Compare up to 5 models side-by-side
- Chat History - Persistent storage with database
- Dark Mode - Beautiful dark theme support
- File Upload - Support for images, PDFs, and DOCX files
- Custom Models - Add your own OpenRouter or Ollama models
- Responsive Design - Works perfectly on desktop and mobile
- Animated Onboarding - 5-step interactive walkthrough for new users
- Loading Skeletons - Smooth perceived performance with animated loading states
- Clean, intuitive interface built with Tailwind CSS
- Shadcn/ui components for consistent design
- Real-time streaming responses
- Keyboard Shortcuts Dialog - Press
Ctrl+/to discover all shortcuts - Global Shortcuts -
Ctrl+K(Model Selector),Ctrl+N(New Chat)
- Download Node.js from nodejs.org and install it
- Download this project: Click the green "Code" button β "Download ZIP" β Extract it
- Double-click
START.batin the extracted folder - That's it! The app opens in your browser automatically
- Install Node.js:
- Mac:
brew install nodeor download from nodejs.org - Linux:
sudo apt install nodejs npm
- Mac:
- Download this project and extract it
- Open Terminal in the project folder and run:
chmod +x START.sh && ./START.sh - Done! Opens at http://localhost:3000
- Node.js 20+
- npm, yarn, or pnpm
- PostgreSQL database (optional - for OAuth, chat sharing)
- Clone the repository
git clone https://github.com/workbydivyanshu/multifariousAI.git
cd multifariousAI- Install dependencies
npm install- Run the development server
npm run devThat's it! The app works fully locally without any database. Chat history is stored in browser localStorage.
For full features like OAuth login and chat sharing, set up environment variables:
cp .env.example .env.localDatabase Setup:
- Install PostgreSQL locally or use a cloud provider (Supabase, Neon, etc.)
- Create a database named
multifariousai - Update
DATABASE_URLin.env.local
OAuth Setup:
- GitHub OAuth: Go to GitHub Settings > Developer settings > OAuth Apps
- Google OAuth: Go to Google Cloud Console > APIs & Credentials
- Add your OAuth client IDs and secrets to
.env.local
Run database migrations:
npm run db:setup
7. **Open [http://localhost:3000](http://localhost:3000)**
That's it! Sign up/login and start chatting!
### Option 2: Docker Desktop
**Note**: Docker Desktop needs to be running for Docker commands to work.
#### Build and Run with Docker Compose
1. **Ensure Docker Desktop is running**
2. **Build image** (Optional - docker-compose handles this)
```bash
docker-compose build
- Run container
docker-compose up --build- Access the app
http://localhost:3000If Docker daemon is not responding:
- Restart Docker Desktop - Stop and start Docker Desktop
- Check Docker Engine - Run
docker infoin terminal - Clear cache - Run
docker system prune -fto clear build cache - Try direct Docker build:
docker build -t multifariousai .Alternative: Use WSL2 or Git Bash
If you have WSL2 installed:
# In WSL2 terminal
cd multifariousAI
docker-compose up --build- Push to GitHub (already done!)
- Go to vercel.com
- Import project - Connect GitHub repository
- Add environment variables (if needed)
- Deploy
- Install dependencies
npm install- Build for production
npm run build- Run production server
npm run startThe following models work with API key:
- β Llama 3.3 70B (Free)
- β Qwen 2.5 72B (Free)
- β Gemma 3 27B (Free)
- β GLM 4.5 Air (Free)
- β And 20+ more free models!
If you want to access premium models, add your API keys in Settings:
- Visit openrouter.ai
- Sign up and get your API key
- Paste in Settings to access:
- Claude 3.5 Sonnet
- GPT-4o
- GPT-4o Mini
- And 100+ more models!
- Visit makersuite.google.com
- Create a project and get your API key
- Paste in Settings to access Gemini models
- Visit mistral.ai
- Get your API key
- Access Codestral, Pixtral, and Mistral's latest models
multifariousAI/
βββ app/ # Next.js App Router
β βββ api/ # API endpoints
β β βββ chat/ # Generic chat endpoint
β β βββ openrouter/ # OpenRouter API
β β βββ gemini/ # Gemini API
β β βββ ollama/ # Ollama API
β βββ globals.css # Global styles
β βββ layout.tsx # Root layout
β βββ page.tsx # Home page
βββ components/ # React components
β βββ auth/ # Authentication components
β βββ chat/ # Chat interface
β βββ settings/ # Settings management
β βββ ui/ # Reusable UI components
βββ lib/ # Utilities
β βββ models.ts # AI model catalog
β βββ useModels.ts # Model management hook
β βββ utils.ts # Helper functions
βββ stores/ # State management
β βββ chat-store.ts # Zustand store
βββ types/ # TypeScript definitions
βββ index.ts # Shared types
npm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
npm run lint # Run ESLint
npm run typecheck # TypeScript type checkingdocker-compose up --build| Model | Context | Provider |
|---|---|---|
| DeepSeek R1 | 64K | OpenRouter |
| Llama 3.3 70B | 128K | OpenRouter |
| Qwen 2.5 72B | 32K | OpenRouter |
| Mistral Small 24B | 32K | OpenRouter |
| Gemma 3 27B | 128K | OpenRouter |
| GLM 4.5 Air | 128K | OpenRouter |
| Hunyuan A13B | 32K | OpenRouter |
| Model | Provider |
|---|---|
| Gemini 2.5 Flash Image | OpenRouter |
| Model | Provider |
|---|---|
| DeepCoder 14B | OpenRouter |
- Database Integration - PostgreSQL with Drizzle ORM
- User Authentication - Better Auth with GitHub/Google OAuth
- Accessibility Overhaul - WCAG 2.1 compliance and keyboard navigation
- Interactive Onboarding - Animated guide for new users
- Conversation Sharing - Share chats via public links
- Chat Export - Export to Markdown, PDF
- Desktop Application - Electron/Tauri for offline use
- Web Search - Integrate web search with responses
- Voice Input/Output - Speech-to-text and TTS
- Mobile App - React Native version
- Plugin System - Community plugins for new providers
- API Rate Limiting - Fair usage limits for free tier
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please see CONTRIBUTING.md for details.
- Inspiration:
- Open Fiesta by lokeswaran-aj
- Open-Fiesta by NiladriHazra
- Models: OpenRouter, Google Gemini, Ollama, Mistral AI
- UI Components: shadcn/ui, Radix UI
- AI SDK: Vercel AI SDK
- π§ Email: support@multifariousai.com (Coming soon)
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
Made with β€οΈ by workbydivyanshu
β If you find this project helpful, please star it on GitHub!