A lightweight desktop client for Claude AI with local data persistence.
⚠️ Note: This is not a production-ready application. It's a vibe coding experiment and learning project.
- 💬 Chat with Claude using your own API key
- 📁 Organize chats into projects
- 💾 Local SQLite storage for all data
- 🌊 Real-time streaming responses
- 🎨 Clean, dark-mode interface
- ⚡ Fast and lightweight (built with Tauri + React)
- Rust (latest stable)
- Node.js (v18 or later)
- pnpm (v9 or later)
- Anthropic API Key
-
Install dependencies
pnpm install
-
Configure API Key
Copy
.env.exampleto.envand add your Anthropic API key:cp .env.example .env
Edit
.env:ANTHROPIC_API_KEY=your_actual_api_key_here -
Run in development mode
pnpm tauri dev
If you encounter issues, see TROUBLESHOOTING.md for common problems and solutions.
Build the application for your platform:
pnpm tauri buildThe built application will be in src-tauri/target/release/bundle/.
- macOS:
.appbundle inbundle/macos/ - Windows:
.exeinstaller inbundle/msi/ - Linux:
.AppImageor.debinbundle/appimage/orbundle/deb/
- Click "New Chat" to start a conversation
- Type your message and press Enter (or click Send)
- Click the "+" button next to "Projects" in the sidebar
- Enter a project name
- Chats created while a project is selected will belong to that project
Enter- Send messageShift+Enter- New line in message input
- Frontend: React + TypeScript + Tailwind CSS + Zustand
- Backend: Rust + Tauri + SQLite
- API: Anthropic Claude API with streaming support
All data is stored locally in SQLite:
- Location:
~/.local/share/claude-lite/claude.db(Linux) - Location:
~/Library/Application Support/claude-lite/claude.db(macOS) - Location:
%APPDATA%\claude-lite\claude.db(Windows)
claude-lite/
├── src/ # Frontend (React)
│ ├── components/ # UI components
│ ├── store/ # Zustand stores
│ └── lib/ # Utilities & types
├── src-tauri/ # Backend (Rust)
│ └── src/
│ ├── commands/ # Tauri commands
│ └── db/ # Database logic
└── README.md
MIT
Contributions welcome! Please open an issue or PR.