https://github.com/chuk-development/chuk_chat
Private AI chat client — open-weight LLMs via OpenRouter, E2E encrypted, cross-platform Flutter
https://github.com/chuk-development/chuk_chat
ai-chat android chat-app cross-platform dart desktop-app encrypted-messaging end-to-end-encryption flutter linux mobile-app privacy supabase web
Last synced: 13 days ago
JSON representation
Private AI chat client — open-weight LLMs via OpenRouter, E2E encrypted, cross-platform Flutter
- Host: GitHub
- URL: https://github.com/chuk-development/chuk_chat
- Owner: chuk-development
- License: other
- Created: 2025-09-17T19:29:46.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2026-05-27T09:00:46.000Z (17 days ago)
- Last Synced: 2026-05-27T10:25:13.032Z (17 days ago)
- Topics: ai-chat, android, chat-app, cross-platform, dart, desktop-app, encrypted-messaging, end-to-end-encryption, flutter, linux, mobile-app, privacy, supabase, web
- Language: Dart
- Homepage: https://chat.chuk.chat
- Size: 11.6 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
Chuk Chat
Private AI That Actually Belongs to You
A simple monthly subscription, full control, no data mining.
Chat, write, code, research — powered entirely by transparent open-weight models.
Website ·
Web App ·
Docs ·
Downloads
---
## Screenshots
## Why Chuk Chat?
We use only open-weight models — no black boxes and no silent data collection. You know exactly what runs your AI.
- **Clear monthly pricing** — One fee covers platform access and AI credits. No hidden costs.
- **Open-weight only** — DeepSeek, Llama, Mistral, Qwen, and more via [OpenRouter](https://openrouter.ai). No closed-source models. Aggregate usage is publicly visible on the [OpenRouter app page](https://openrouter.ai/apps?url=https%3A%2F%2Fgithub.com%2Fchuk-development%2Fchuk_chat) — token totals and models, zero personal data.
- **Privacy first** — Encrypted chats, no tracking, no profiling. Built like a tool, not a marketing funnel.
- **Your data, your control** — We store nothing you don't want. Fully deletable. Fully controllable. Fully yours.
## Features
### Core
- **End-to-End Encryption** — Server-synced chat data is encrypted client-side with AES-256-GCM before upload
- **Cross-Platform** — Android, iOS, Linux, macOS, Windows, and Web
- **Real-Time Streaming** — Watch AI responses as they're generated, with streaming preserved across chat switches
- **File Attachments** — Share images, PDFs, and documents with AI
- **Offline Support** — Access your chat history without a connection, with automatic network recovery and plaintext local cache for instant loading
### AI Tools
- **Tool Calling** — Built-in tool system with registry, executor, and per-tool settings. AI can call tools and display results inline
- **AI Image Generation** — Generate and edit images directly in chat
- **Interactive Maps** — AI responses with `` blocks render inline maps with markers, places, and route polylines
- **Interactive Charts** — AI responses with `` blocks render inline charts (bar, line, pie, scatter, radar)
- **Weather Cards** — AI responses with `` blocks render rich weather cards with hourly forecast
- **Email Drafts** — AI responses with `` blocks render email cards with "Open in Mail App" button
- **Spotify Control** — Play, pause, search, manage playlists and volume via OAuth-connected Spotify
- **Calendar & Reminders** — Create calendar events (native on Android/macOS, .ics on Linux/Windows) and set alarms/timers with notifications
- **Web Search & News** — Brave-powered web and news search with freshness controls
- **Weather, Places, Calculator, QR Codes, Notes** — Expanding set of built-in tool handlers
- **Multi-Pass Tool Call Rendering** — Interleaved content blocks show text and tool calls in correct chronological order with collapsible UI
### Account & Privacy
- **Multi-Step Account Deletion** — GDPR-compliant three-step deletion flow with password confirmation
- **In-App Update Checks** — Automatic version checking against GitHub Releases with platform-specific download links (APK, DEB, AppImage, DMG, EXE)
### UI & UX
- **Theme Customization** — Colors, backgrounds, dark/light mode, visual effects
- **Redesigned Reasoning UI** — Expandable accent-tinted cards for model reasoning and tool call details
- **Mobile Three-Pill Input** — Redesigned mobile input bar with separate attachment, text, and action pills
- **Audio Visualizer** — Gradient glow waveform with exponential scaling for voice recording
- **Unified Image Preview** — Consistent image viewer across desktop and mobile with copy-to-clipboard support
- **Debug Chat Copy** — Copy full chat contents (including reasoning, tool calls, model info) to clipboard for debugging
## Security & Privacy
- **Client-side encryption** — Chats synced to the server are encrypted on your device before upload
- **Zero-knowledge architecture** — We cannot read your chats, even if the server is compromised
- **Plaintext local cache** — Previously loaded chats are also cached locally in plaintext for instant loading and offline access; this cache is protected by your device account and OS sandbox, not by the chat encryption layer
- **Certificate pinning** — Protection against MITM attacks, including WebSocket connections
- **Image validation** — Magic-byte verification on uploaded images
- **No logging in production** — All debug logs are disabled in release builds
> **If you lose your password, all your chats are permanently lost.** There is no recovery mechanism by design — this ensures maximum privacy. Choose a strong password and store it safely.
### What is encrypted
| Data | Storage |
|------|---------|
| Chat messages | Encrypted before sync/storage on the server (AES-256-GCM). Previously loaded chats are also cached locally in plaintext for instant loading and offline access |
| Chat titles & metadata | Encrypted on the server. When cached locally for faster loading, they are stored in plaintext |
| Starred chat status | Encrypted on the server. When cached locally, it is stored in plaintext |
| Your encryption key | Stored locally only and never synced to the server. Uses secure storage where available, with local app-storage fallback on some desktop builds |
For detailed security information, see [SECURITY.md](SECURITY.md).
## Pricing
**€20/month** — all models, all platforms. Includes €16 in monthly AI credits; €4 covers infrastructure and platform access.
See [chuk.chat/en/pricing](https://chuk.chat/en/pricing) for details.
## Development
### Prerequisites
- **Flutter SDK** 3.24+ (includes Dart 3.9.2+)
- **Supabase** project ([supabase.com](https://supabase.com))
Platform-specific: Android Studio (Android), Xcode (iOS/macOS), Visual Studio 2022 (Windows).
### Setup
```bash
git clone https://github.com/chuk-development/chuk_chat.git
cd chuk_chat
cp .env.example .env
# Edit .env with your Supabase credentials
flutter pub get
./run.sh linux # or: android, android-x64, android-vm [avd_name], windows, macos, ios, web
```
### Build
```bash
# Quick release build (loads credentials from .env)
flutter build apk --release \
--dart-define-from-file=.env \
--dart-define=PLATFORM_MOBILE=true
# Full release (all platforms)
./scripts/build-release.sh all
```
### Documentation
Full developer and architecture documentation is available at [docs.chuk.chat](https://docs.chuk.chat).
See also the [docs/](docs/) folder for build instructions, architecture, database schema, and more.
### Contributing
1. Fork the repo
2. Create a feature branch
3. Run `flutter analyze` and `dart format .`
4. Open a Pull Request
See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
## Tech Stack
| Component | Technology |
|-----------|-----------|
| Framework | [Flutter](https://flutter.dev) (Dart) |
| Backend | [Supabase](https://supabase.com) |
| Encryption | AES-256-GCM with PBKDF2 key derivation |
| AI Models | [OpenRouter](https://openrouter.ai) |
| Hosting | Dokploy + Cloudflare |
## License
[Business Source License 1.1](LICENSE) — free for non-production use. Converts to GPL v3 after 3 years per release.
## Links
- [Website](https://chuk.chat) — Product page & pricing
- [Web App](https://chat.chuk.chat) — Use Chuk Chat in the browser
- [Documentation](https://docs.chuk.chat) — Full docs
- [Privacy Policy](https://chuk.chat/en/privacy)
- [Status](https://status.chuk.chat)
- [Blog](https://chuk.chat/en/blog)
- [OpenRouter Usage Stats](https://openrouter.ai/apps?url=https%3A%2F%2Fgithub.com%2Fchuk-development%2Fchuk_chat) — Aggregate token usage and models used across all Chuk Chat users (no personal data)