https://github.com/codse/chat
What will it take to be the best AI chat app ever?
https://github.com/codse/chat
ai chat-application rag realtime-messaging
Last synced: about 1 month ago
JSON representation
What will it take to be the best AI chat app ever?
- Host: GitHub
- URL: https://github.com/codse/chat
- Owner: codse
- Created: 2025-06-10T18:05:10.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-15T16:19:18.000Z (12 months ago)
- Last Synced: 2025-06-15T16:39:18.922Z (12 months ago)
- Topics: ai, chat-application, rag, realtime-messaging
- Language: TypeScript
- Homepage:
- Size: 672 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Getting Started
## Prerequisites
- Node.js 18+
- pnpm 8+
## Installation
1. Clone the repository
2. Install dependencies:
```bash
pnpm install
```
3. Set up environment variables:
Create `.env.local` & `.env` files in the root directory with:
```env
# .env
VITE_APP_URL=http://localhost:3000
```
4. Run `npx convex dev` and use local deployment. It will create `.env.local` file for you.
```env
# .env.local
CONVEX_DEPLOYMENT=your-deployment-id
CONVEX_URL=your-convex-url
```
5. Run the Convex Auth CLI (`npx @convex-dev/auth`) to configure authentication:
- When prompted for SITE_URL, enter `http://localhost:3000`
- For all other prompts, select 'Yes' to continue
6. Set up Convex environment variables, either through the dashboard or the CLI.
This is used for free models. Alternatively, you can set up keys using BYOK dialog from app's sidebar.
```bash
npx convex env set OPENROUTER_API_KEY
```
If you'd like to use Google login:
```bash
npx convex env set AUTH_GOOGLE_SECRET
npx convex env set AUTH_GOOGLE_ID
```
7. Start the development server:
```bash
pnpm dev
```
The application will be available at `http://localhost:3000`
## Project Structure
- `src/` - Source code
- `components/` - React components
- `routes/` - TanStack Router routes
- `lib/` - Utility functions
- `convex/` - Convex backend functions and schema
## Tech Stack
- [TanStack Start](https://tanstack.com/start) - Framework
- [TanStack Router](https://tanstack.com/router) - Routing
- [TanStack Query](https://tanstack.com/query) - Data fetching
- [Convex](https://www.convex.dev/) - Backend
- [Convex Auth](https://convex.dev/docs/auth) - Authentication
- [React](https://react.dev/) - UI library
- [Tailwind CSS](https://tailwindcss.com/) - Styling
- [Lucide](https://lucide.dev/) - Icons
- [Shadcn UI](https://ui.shadcn.com/) - UI components
- [Prompt kit](https://www.prompt-kit.com/) - Chat UI
- [OpenRouter](https://openrouter.ai/) - AI API
- [Vercel AI SDK](https://sdk.vercel.ai/) - AI SDK