11# BetterCode
22
3- A local-first Electron desktop app for AI-powered code assistance with multi-provider support.
3+ ** UI for parallel work with AI agents ** -- a local-first Electron desktop app for AI-powered code assistance with multi-provider support.
44
5+ [ ![ Version] ( https://img.shields.io/badge/version-0.0.6-blue )] ( )
56[ ![ macOS] ( https://img.shields.io/badge/macOS-supported-brightgreen )] ( )
67[ ![ Linux] ( https://img.shields.io/badge/Linux-supported-brightgreen )] ( )
78[ ![ Windows] ( https://img.shields.io/badge/Windows-experimental-yellow )] ( )
@@ -11,104 +12,129 @@ A local-first Electron desktop app for AI-powered code assistance with multi-pro
1112
1213---
1314
14- <!-- Screenshot placeholder: Add main app interface screenshot here -->
15- <!--  -->
15+ ![ BetterCode Screenshot] ( screenshot.png )
1616
17- ## Screenshots
17+ ## Features
1818
19- <!-- Add screenshots to docs/screenshots/ and uncomment the relevant lines -->
19+ ### AI-Powered Coding
2020
21- | Main Chat Interface | Terminal Integration |
22- | :---:| :---:|
23- | <!--  --> * Chat interface placeholder* | <!--  --> * Terminal placeholder* |
21+ - ** Multi-Provider Support** -- Use Claude, OpenAI Codex, or OpenCode as your AI backend
22+ - ** Plan and Agent Modes** -- Switch between read-only analysis (Plan) and full code execution permissions (Agent)
23+ - ** Ralph Mode** -- Autonomous coding sessions with minimal user input
24+ - ** Session Resume** -- Continue conversations across app restarts with full context preservation
2425
25- | Git Changes View | Project Selector |
26- | :---:| :---:|
27- | <!--  --> * Changes view placeholder* | <!--  --> * Project selector placeholder* |
26+ ### Development Tools
2827
29- ## Features
28+ - ** Integrated Terminal** -- Full xterm-based terminal with multiple panes and session persistence
29+ - ** Real-time Tool Execution** -- Watch bash commands, file edits, and web searches execute live
30+ - ** Git Worktree Isolation** -- Each chat session runs in its own isolated Git worktree for safe experimentation
31+ - ** Change Tracking** -- Visual diffs, file change tracking, and PR management
32+
33+ ### Project Management
34+
35+ - ** Project Linking** -- Link local folders with automatic Git remote detection for GitHub, GitLab, and Bitbucket
36+ - ** VSCode Theme Support** -- Import and apply your favorite VSCode themes with builtin theme options
37+ - ** Cross-Platform** -- Native builds for macOS, Linux, and Windows (experimental)
3038
31- - ** AI Chat Modes** - Switch between Plan mode (read-only analysis) and Agent mode (full code execution permissions)
32- - ** Multi-Provider Support** - Use Claude, OpenAI Codex, or OpenCode as your AI backend
33- - ** Project Management** - Link local folders with automatic Git remote detection for GitHub, GitLab, and Bitbucket
34- - ** Git Worktree Isolation** - Each chat session runs in its own isolated Git worktree for safe experimentation
35- - ** Real-time Tool Execution** - Watch bash commands, file edits, and web searches execute live
36- - ** Integrated Terminal** - Full xterm-based terminal with multiple panes and session persistence
37- - ** Change Tracking** - Visual diffs, file change tracking, and PR management
38- - ** Session Resume** - Continue conversations across app restarts with full context preservation
39- - ** VSCode Theme Support** - Import and apply your favorite VSCode themes
39+ ### Privacy
40+
41+ - ** Zero Analytics** -- No telemetry, no data collection, fully local-first
4042
4143## Installation
4244
43- ### Option 1: Download Release
45+ ### Download Release
46+
47+ Download the latest release for your platform from the [ Releases] ( https://github.com/Nolikzero/better-code/releases ) page.
4448
45- Download the latest release for your platform from the [ Releases] ( https://github.com/21st-dev/1code/releases ) page.
49+ | Platform | Formats |
50+ | ----------| ---------|
51+ | macOS (Apple Silicon) | DMG, ZIP |
52+ | Linux (x64, arm64) | AppImage, DEB, RPM |
53+ | Windows (x64) | NSIS installer |
4654
47- ### Option 2: Build from Source
55+ ### Build from Source
4856
4957** Prerequisites:**
5058- [ Bun] ( https://bun.sh/ ) package manager
5159- Node.js 18+ (for native module compilation)
52- - Platform-specific:
53- - ** macOS** : Xcode Command Line Tools (` xcode-select --install ` )
54- - ** Linux** : Build essentials (` build-essential ` , ` python3 ` )
55- - ** Windows** : Visual Studio Build Tools
60+ - ** macOS** : Xcode Command Line Tools (` xcode-select --install ` )
61+ - ** Linux** : Build essentials (` build-essential ` , ` python3 ` )
62+ - ** Windows** : Visual Studio Build Tools
5663
5764``` bash
58- git clone https://github.com/21st-dev/1code .git
59- cd 1code
65+ git clone https://github.com/Nolikzero/better-code .git
66+ cd better-code
6067bun install
6168bun run build
6269bun run package:mac # or package:win, package:linux
6370```
6471
65- ### Option 3: Development Setup
72+ ### Development Setup
6673
6774``` bash
68- git clone https://github.com/21st-dev/1code .git
69- cd 1code
75+ git clone https://github.com/Nolikzero/better-code .git
76+ cd better-code
7077bun install
7178bun run dev # Start with hot reload
7279```
7380
7481## Quick Start
7582
76- 1 . ** Launch the app** - Open BetterCode after installation
77- 2 . ** Complete onboarding** - Sign in with your Claude account or configure your preferred AI provider
78- 3 . ** Add a project** - Click "Add Project" and select a local folder (Git repos are auto-detected)
79- 4 . ** Start chatting** - Choose Plan or Agent mode and begin your coding session
83+ 1 . ** Launch the app** -- Open BetterCode after installation
84+ 2 . ** Complete onboarding** -- Sign in with your Claude account or configure your preferred AI provider
85+ 3 . ** Add a project** -- Click "Add Project" and select a local folder (Git repos are auto-detected)
86+ 4 . ** Start chatting** -- Choose Plan or Agent mode and begin your coding session
8087
8188## Architecture
8289
8390```
8491┌─────────────────────────────────────────────────────────────┐
8592│ Electron Application │
8693├─────────────────┬─────────────────┬─────────────────────────┤
87- │ Main Process │ Preload │ Renderer Process │
88- │ (Node.js) │ (IPC Bridge) │ (React 19) │
94+ │ Main Process │ Preload │ Renderer Process │
95+ │ (Node.js) │ (IPC Bridge) │ (React 19) │
8996├─────────────────┼─────────────────┼─────────────────────────┤
90- │ • tRPC Routers │ • Context │ • Tailwind CSS │
91- │ • SQLite DB │ Isolation │ • Radix UI Components │
92- │ • Git Ops │ • desktopApi │ • Jotai/Zustand State │
93- │ • AI Providers │ Exposure │ • React Query │
94- │ • Terminal PTY │ │ • xterm Terminal │
97+ │ • tRPC Routers │ • Context │ • Tailwind CSS 4 │
98+ │ (15 routers) │ Isolation │ • Radix UI Components │
99+ │ • SQLite + │ • desktopApi │ • Jotai + Zustand │
100+ │ Drizzle ORM │ Exposure │ • React Query │
101+ │ • Git Ops + │ │ • xterm Terminal │
102+ │ Worktrees │ │ • Shiki Highlighting │
103+ │ • AI Providers │ │ │
104+ │ (3 providers) │ │ │
105+ │ • Terminal PTY │ │ │
95106└─────────────────┴─────────────────┴─────────────────────────┘
96107```
97108
98109For detailed architecture documentation, see [ CLAUDE.md] ( CLAUDE.md ) .
99110
111+ ## AI Providers
112+
113+ BetterCode supports multiple AI backends through a unified provider interface:
114+
115+ | Provider | SDK | Description |
116+ | ----------| -----| -------------|
117+ | Claude | ` @anthropic-ai/claude-agent-sdk ` | Anthropic Claude with full tool use |
118+ | Codex | ` @openai/codex-sdk ` | OpenAI Codex for code generation |
119+ | OpenCode | ` @opencode-ai/sdk ` | OpenCode AI provider |
120+
121+ Providers can be switched per-chat and support both Plan mode (read-only) and Agent mode (full execution permissions).
122+
100123## Tech Stack
101124
102- | Layer | Technologies |
103- | -------| --------------|
104- | Desktop | Electron, electron-vite, electron-builder |
105- | Frontend | React 19, TypeScript, Tailwind CSS |
106- | Components | Radix UI, Lucide icons, Motion |
107- | State | Jotai, Zustand, React Query |
108- | Backend | tRPC, Drizzle ORM, better-sqlite3 |
109- | AI | Claude SDK, Codex SDK, Vercel AI SDK |
110- | Terminal | xterm, node-pty |
111- | Git | simple-git |
125+ | Layer | Technologies | Version |
126+ | -------| --------------| ---------|
127+ | Desktop | Electron, electron-vite, electron-builder | 40.0.0 |
128+ | Frontend | React, TypeScript, Tailwind CSS | 19.2.3, 5.9.3, 4.1.18 |
129+ | Components | Radix UI, Lucide icons, Motion | -- |
130+ | State | Jotai, Zustand, React Query | 2.16.2, 5.0.10, 5.x |
131+ | Backend | tRPC, Drizzle ORM, better-sqlite3 | 11.8.1, 0.45.1, 12.x |
132+ | AI | Claude Agent SDK, Codex SDK, OpenCode SDK, Vercel AI SDK | -- |
133+ | Terminal | xterm, node-pty | 6.0.0, 1.1.0 |
134+ | Code | Shiki (syntax highlighting) | 3.21.0 |
135+ | Git | simple-git | 3.30.0 |
136+ | Linting | Biome | 2.3.11 |
137+ | Package Manager | Bun | -- |
112138
113139## Development
114140
@@ -120,9 +146,10 @@ For detailed architecture documentation, see [CLAUDE.md](CLAUDE.md).
120146| ` bun run build ` | Production build |
121147| ` bun run package:mac ` | Package for macOS (DMG + ZIP) |
122148| ` bun run package:win ` | Package for Windows (NSIS) |
123- | ` bun run package:linux ` | Package for Linux (AppImage + DEB) |
149+ | ` bun run package:linux ` | Package for Linux (AppImage, DEB, RPM ) |
124150| ` bun run db:generate ` | Generate database migrations |
125151| ` bun run db:push ` | Push schema directly (dev only) |
152+ | ` bun run db:studio ` | Open Drizzle Studio for database inspection |
126153| ` bun run lint ` | Run Biome linter |
127154| ` bun run format ` | Format code with Biome |
128155| ` bun run typecheck ` | TypeScript type checking |
@@ -131,25 +158,19 @@ For detailed architecture documentation, see [CLAUDE.md](CLAUDE.md).
131158
132159BetterCode uses SQLite with Drizzle ORM. The database is stored at ` {userData}/data/agents.db ` and migrations run automatically on startup.
133160
134- ``` bash
135- bun run db:generate # Generate migrations after schema changes
136- bun run db:studio # Open Drizzle Studio for database inspection
137- ```
138-
139161## Documentation
140162
141- - [ Architecture Guide] ( CLAUDE.md ) - Detailed codebase structure and patterns
142- - [ Apple Signing Setup] ( docs/apple-signing-setup.md ) - macOS code signing and notarization
143- - [ Contributing Guide] ( CONTRIBUTING.md ) - How to contribute to BetterCode
163+ - [ Architecture Guide] ( CLAUDE.md ) -- Detailed codebase structure, patterns, and development reference
164+ - [ Contributing Guide] ( CONTRIBUTING.md ) -- How to contribute to BetterCode
144165
145166## Contributing
146167
147168Contributions are welcome. See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) for guidelines.
148169
149170``` bash
150171# Fork and clone the repo
151- git clone https://github.com/YOUR_USERNAME/1code .git
152- cd 1code
172+ git clone https://github.com/YOUR_USERNAME/better-code .git
173+ cd better-code
153174
154175# Install dependencies
155176bun install
@@ -160,10 +181,6 @@ git checkout -b feature/your-feature
160181# Make changes, then submit a PR
161182```
162183
163- ## Attribution
164-
165- BetterCode is derived from [ 21st-dev/1code] ( https://github.com/21st-dev/1code ) , licensed under the Apache License 2.0.
166-
167184## License
168185
169- Apache License 2.0 - see [ LICENSE] ( LICENSE ) for details.
186+ Apache License 2.0 -- see [ LICENSE] ( LICENSE ) for details.
0 commit comments