This is my submission to the t3 chat cloneathon, built fully by myself.
- OpenAI: o4-mini, GPT-4.1 nano, GPT-4.1
- Anthropic: Claude 4 Sonnet
- React Router
- TRPC
- Streaming TRPC
- AI SDK
- Express
- Clerk
-
Chat with Various LLMs
-
Authentication & Sync
-
Browser Friendly
-
Easy to Try
-
Syntax Highlighting
-
Resumable Streams
- og prompt in new chats disappear
- model selection with multiple models from multiple providers
- auth
- chat ui
- chat history
- chat resumability
- multiple clients can stream the same chat at the same time
- automatically rejoin the stream when reconnecting or switching chat
- show response history when rejoining stream
- chat deletion
- render performance / loading state
- markdown formatting and syntax highlighting
- clerk release mode
- sign-in ui
- model chat memory (locally is fine)
- live sidebar with subscription
- user permission limiting
- chat forking
- smooth animating text
Copy over the .env.example to .env and fill in all variables.
pnpm db:push
pnpm build
pnpm start
pnpm dev