Open Fiesta is an AI chat application with 200+ AI models like OpenAI, Gemini, Claude, Perplexity, Deepseek, and Grok in one place. Compare multiple AI model responses side-by-side in real-time and choose the best AI for every task
- Modern chat interface with real-time AI streaming
- Multi-model chat: talk to ChatGPT, Claude, Gemini, Grok, etc. in parallel
- Authentication with Better Auth
- API Key Management for AIMLAPI, OpenRouter, and Vercel AI Gateway
- Persistent chat history in Postgres
- Chat AI model settings like temperature, top-p, frequency penalty, etc.
- Local-first storage with IndexedDB for quick access to recent chats
- (Future) Shareable chats / export as Markdown or PDF
- Next.js
- TypeScript
- Tailwind CSS
- Shadcn UI
- Vercel AI SDK
- Vercel AI Gateway
- OpenRouter
- PromptKit
- Better Auth
Before setting up Open Fiesta locally, make sure you have the following installed:
- Node.js (v20 or later) - Download here
- pnpm - Install with
npm install -g pnpmor follow the official guide - Docker & Docker Compose - Download here
- Git - Download here
git clone https://github.com/lokeswaran-aj/open-fiesta.git
cd open-fiestapnpm installCopy the .env.example file to .env and fill in the values:
cp .env.example .envStart the PostgreSQL database using Docker Compose:
docker-compose up -dThe database will be available at localhost:5432 with:
- Database:
postgres - Username:
postgres - Password:
password
Generate and run database migrations:
# Generate migration files (if schema changes)
npx drizzle-kit generate
# Apply migrations to database
npx drizzle-kit migrate- AIMLAPI: Sign up at aimlapi.com for access to various AI models
- Vercel AI Gateway: Get your gateway key from Vercel AI Gateway
GitHub OAuth:
- Go to GitHub Settings > Developer settings > OAuth Apps
- Create a new OAuth App with:
- Application name:
Open Fiesta Local - Homepage URL:
http://localhost:3000 - Authorization callback URL:
http://localhost:3000/api/auth/callback/github
- Application name:
- Copy the Client ID and Client Secret to your
.envfile
Google OAuth:
- Go to Google Cloud Console
- Create a new project or select an existing one
- Enable the Google+ API
- Go to Credentials > Create Credentials > OAuth client ID
- Configure the consent screen
- Set authorized redirect URIs:
http://localhost:3000/api/auth/callback/google - Copy the Client ID and Client Secret to your
.envfile
pnpm devOpen http://localhost:3000 in your browser to see Open Fiesta running locally! 🎉
pnpm dev- Start development server with Turbopackpnpm build- Build the application for productionpnpm start- Start the production serverpnpm lint- Run Biome linterpnpm format- Format code with Biome
Database Connection Issues:
- Ensure Docker is running and the PostgreSQL container is healthy
- Check if port 5432 is available (not used by another service)
- Verify the
DATABASE_URLin your.envfile
Authentication Issues:
- Double-check OAuth app configurations
- Ensure callback URLs match exactly
- Verify the
BETTER_AUTH_SECRETis set and sufficiently random
Missing AI Responses:
- Verify your API keys are correct and have sufficient credits
- Check the AI Gateway configuration
- Monitor the browser console and server logs for errors
Open Fiesta is still in early development. Contributions are super welcome!
- Check the Issues page
- Open a PR with improvements
- Share feedback / ideas in Discussions
Open Fiesta is licensed under the Apache License 2.0. See LICENSE for full details.