A fast AI chat app that allows users to chat with models via OpenRouter, OpenAI, Groq, Anthropic (not tested) and Google (not tested).
Developed as a clone of T3 Chat for the T3 Chat Cloneathon.
Try it out at chatset.johannesschiessl.com
See models.ts for the list of supported models.
- Node.js (v18 or higher)
- pnpm package manager
- A Convex account
- Google Cloud Console account (for OAuth)
- Groq account (for Groq API for the chat title generation)
-
Clone the repository
git clone https://github.com/johannesschiessl/chatset.git cd chatset -
Install dependencies
pnpm install
-
Set up environment variables
- Copy
.env.exampleto.env.local - Fill in the required environment variables (see
.env.examplefor reference)
- Copy
-
Set up Convex
# For development pnpm dev:convex # For production deployment pnpm deploy:convex
You will need to add an environment variable for the API_KEY_ENCRYPTION_SECRET and GROQ_API_KEY to your Convex project. You get one here: Groq Console.
-
Set up Google OAuth
- Go to Google Cloud Console
- Create a new OAuth 2.0 Client ID
- Add your domain to authorized origins
- Copy the Client ID and Client Secret to your
.env.localfile
-
Build and run
# For development pnpm dev # For production pnpm build pnpm start
That's it! Your chatset instance should now be running.
Feel free to contribute by creating issues or pull requests. Suggestions for new features are always welcome!
This project is licensed under the MIT License - see the LICENSE file for details.