Skip to content

Commit 97d1561

Browse files
committed
docs: update all docs for ChatModeSelector, plan fixes, test counts
- COMPONENTS.md: add ChatModeSelector, mark PlanApprovalAlert deprecated - README.md: 20 providers -> 22 providers - docs/README.md: 511 tests -> 537, 20 -> 22 providers, add What's New - CONTRIBUTING.md: 511 tests -> 537 across 27 files - STATE-MANAGEMENT.md: add usePlanSync hook - STYLING-GUIDELINES.md: add blue-tinted page theme colors
1 parent a027c3e commit 97d1561

6 files changed

Lines changed: 27 additions & 7 deletions

File tree

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ pnpm run dev
4343

4444
## Why Devonz?
4545

46-
- **20 AI providers** — OpenAI, Anthropic, Google, Groq, Z.ai, Ollama, and more. Swap models mid-conversation.
46+
- **22 AI providers** — OpenAI, Anthropic, Google, Groq, Z.ai, Ollama, and more. Swap models mid-conversation.
4747
- **Full dev environment in the browser** — editor, terminal, live preview, all powered by WebContainers.
4848
- **One-click deploy** — push to GitHub, GitLab, Netlify, or Vercel directly from the UI.
4949
- **MCP tools** — extend the agent with Model Context Protocol servers for specialized workflows.
@@ -60,7 +60,7 @@ pnpm run dev
6060

6161
**AI & Code Generation**
6262
- Natural language to full-stack apps (Node.js-based)
63-
- 20 LLM providers with hot-swappable model selection
63+
- 22 LLM providers with hot-swappable model selection
6464
- MCP (Model Context Protocol) tool integration
6565
- Automatic error detection and auto-fix from terminal output
6666
- Attach images to prompts for visual context

‎docs/COMPONENTS.md‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ The primary user interaction surface. Handles message display, input, file uploa
2020
| --------- | ------- |
2121
| `Chat.client.tsx` | Top-level chat controller (client-only, wraps AI SDK `useChat`) |
2222
| `BaseChat.tsx` | Layout and props interface for the chat UI |
23-
| `ChatBox.tsx` | Message input area with toolbar |
23+
| `ChatBox.tsx` | Message input area with toolbar and mode selector |
2424
| `Messages.client.tsx` | Message list renderer |
2525
| `UserMessage.tsx` | User message bubble |
2626
| `AssistantMessage.tsx` | AI response bubble |
@@ -43,7 +43,8 @@ The primary user interaction surface. Handles message display, input, file uploa
4343
| `ChatAlert.tsx` | Chat error/warning alerts |
4444
| `LLMApiAlert.tsx` | LLM API error alerts |
4545
| `SupabaseAlert.tsx` | Supabase connection alerts |
46-
| `PlanApprovalAlert.tsx` | Plan approval UI |
46+
| `ChatModeSelector.tsx` | Unified Build/Plan/Discuss mode selector (Radix Popover) — replaces separate Plan and Discuss toggles |
47+
| `PlanApprovalAlert.tsx` | ~~Plan approval UI~~ — **deprecated**, no longer imported (dead code) |
4748
| `DicussMode.tsx` | Discuss (non-coding) mode |
4849
| `MCPTools.tsx` | MCP tools indicator in the chat toolbar; MCP tool selection |
4950
| `chatExportAndImport/` | Chat export/import functionality |

‎docs/CONTRIBUTING.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ describe('MyComponent', () => {
138138
});
139139
```
140140

141-
The project currently has 511 tests across 25 test files.
141+
The project currently has 537 tests across 27 test files.
142142

143143
Recent test expansion areas include:
144144

‎docs/README.md‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,10 @@
2727
- **MCP Schema Sanitization** — Automatic schema compatibility for Google Gemini (strips unsupported constructs)
2828
- **MCP Auto-Approve** — Per-server auto-approve toggle for trusted MCP servers
2929
- **Formatted Tool Results** — MCP tool results render as formatted markdown instead of raw JSON
30+
- **Unified Mode Selector** — Single Build/Plan/Discuss dropdown replaces separate toggles
31+
- **Auto-Collapse Plan** — Plan panel auto-collapses when all tasks reach 100%
3032
- **Security Hardening** — `withSecurity()` on all 35+ API routes with input validation, rate limiting options, URL allowlisting
31-
- **511 Tests** — Across 25 test files for comprehensive coverage
33+
- **537 Tests** — Across 27 test files for comprehensive coverage
3234
- **Z.ai Provider** — Integration with 10 static GLM models optimized for coding tasks
3335

3436
---
@@ -42,7 +44,7 @@
4244
| Language | TypeScript (strict) |
4345
| Styling | UnoCSS + SCSS + Radix UI |
4446
| State | Nanostores |
45-
| AI/LLM | Vercel AI SDK v4.3 (20 providers) |
47+
| AI/LLM | Vercel AI SDK v4.3 (22 providers) |
4648
| Editor | CodeMirror 6 |
4749
| Terminal | xterm.js 5.5 |
4850
| Runtime | WebContainer API |

‎docs/STATE-MANAGEMENT.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ All hooks live in `app/lib/hooks/`. They often wrap store access or provide data
193193
| `useSupabaseConnection` | Supabase connection state |
194194
| `useViewport` | Responsive breakpoint detection |
195195
| `useVersionCheck` | Polls `/api/version-check` to detect available updates, drives `UpdateBanner` |
196+
| `usePlanSync` | Syncs PLAN.md file changes from WebContainer into the plan store, preserving user approval state |
196197

197198
---
198199

‎docs/STYLING-GUIDELINES.md‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ className = 'bg-[#1a1a1a]';
2727

2828
## Color Palette (Dark Theme)
2929

30+
### Neutral Dark (Generic Components)
31+
3032
| Element | Color | Usage |
3133
| --------------------- | --------- | -------------------------- |
3234
| Background (deep) | `#0a0a0a` | Deepest background |
@@ -40,6 +42,20 @@ className = 'bg-[#1a1a1a]';
4042
| Text (muted) | `#6b7280` | Placeholder, hints |
4143
| Accent | `#a855f7` | Purple accent (purple-500) |
4244

45+
### Blue-Tinted Dark (Page & Popover Theme)
46+
47+
The main page body and floating UI (popovers, dropdowns) use blue-tinted dark colors for a cohesive feel:
48+
49+
| Element | Color | Usage |
50+
| --------------------- | --------- | -------------------------- |
51+
| Page background | `#0b0d13` | Body / root background |
52+
| Popover / dropdown bg | `#0f1219` | Floating panel backgrounds |
53+
| Hover (blue-tinted) | `#1a1f2e` | Hover states in popovers |
54+
| Border (blue-tinted) | `#1e293b` | Borders on floating panels |
55+
| Shadow (floating) | `rgba(0,0,0,0.6)` | Deep drop shadow for depth |
56+
57+
> **Important**: Browser default `<button>` backgrounds are gray. Always add `bg-transparent` or `border-none bg-transparent` to custom buttons in dark popovers.
58+
4359
## Component Patterns
4460

4561
### Modals/Dialogs

0 commit comments

Comments
 (0)