π CharmCode Editor v5.0
Tired of VSCode feeling bulky and bloated?
So were we. One day, after joking around with Gemini and Claude Code, it hit us:
βLetβs build our own editor.β
The result? CharmCode Editor v5.0 β a truly minimal shell powered by a microkernel architecture and driven by protocol-based AI orchestration.
Think of it as an OS within an OS. Itβs lightning-fast, infinitely extensible, and surprisingly fun to build.
πΎ The Origin Story
- VSCode is powerful, but comes with performance tradeoffs and tangled configuration.
- Over coffee (and way too many βwhat if weβ¦β jokes), we started mocking up a minimal editor.
- It became real: built with Qt/C++, using a PieceTable buffer, and coordinating everything through protocol-driven AI events.
π οΈ Architecture Overview
flowchart LR
subgraph Shell
A[Window & Layout Manager] --> B[Plugin Loader & Lifecycle]
end
A --> C[Core Services]
subgraph CoreServices
C --> D[MessageBus]
C --> E[DI Container]
end
D --> F[Event Broker AI]
subgraph Plugin Ecosystem
F --> G[TextEditor Plugin]
F --> H[FileTree Plugin]
F --> I[GitClient Plugin]
F --> J[AIAssistant Plugin]
end
subgraph Protocol Layer
K[text.buffer.protocol]
L[ui.contribution.protocol]
M[intent.io.protocol]
end
G --> K
H --> L
J --> M
Shell: Manages windows, layout, and plugin lifecycle.
Core Services: Lock-free MessageBus + DI for clean, unified messaging.
Protocol Layer: Every interaction uses protocols like text.buffer, ui.contribution, and intent.io.
Event Broker AI: Translates raw input into semantic events that orchestrate plugins.
Plugins: Every feature (text editing, file tree, Git, AI assistant) is just a plugin.
π A Moment of Divine AI
When Claude Code generated this banner, we knew we were onto something:
yaml
γ³γγΌγγ
η·¨ιγγ
π The moment of pure awe!
Generated code
π WORLD CONQUEST SUCCESS! π
β§___β§
( γ»βγ») < VSCode transcendence complete!
/ γ½
| Divinity |
γ½___γ
π MICROKERNEL REVOLUTION! π
Use code with caution.
π₯ Achieved the realm of the divine!
π§ Semantic Events: AI-driven coordination system
β‘ 0.053ms processing speed: light-speed performance
π Infinite extensibility: protocol-based architecture
π AI super-collaboration: emergent plugin synergy
π 97% confidence: god-tier accuracy
π Core Tech Highlights
1. Event Broker AI
We turn user input and debug state into semantic orchestration commands:
cpp
γ³γγΌγγ
η·¨ιγγ
emit userIsRefactoring("calculateTotalPrice", RefactoringType::ExtractMethod);
emit debuggingSessionStruggling("NullPointerException", StruggleLevel::High);
Becomes:
cpp
γ³γγΌγγ
η·¨ιγγ
emit orchestrateCommand("enterAdvancedDebugMode", {
{"suggestedWatches", QStringList{"user", "service", "result"}},
{"relatedFiles", QStringList{"UserService.h", "UserServiceTest.cpp"}}
});
2. Protocol-First Extensibility
All plugins speak a simple JSON-based protocol:
json
γ³γγΌγγ
η·¨ιγγ
{
"protocol": "text.buffer",
"version": "1.0",
"methods": {
"insertText": { /* ... */ },
"deleteRange": { /* ... */ }
},
"events": {
"textChanged": { /* ... */ }
}
}
β You can write a plugin in any language or framework, as long as it speaks the protocol.
3. High-Performance Messaging & Dependency Injection
cpp
γ³γγΌγγ
η·¨ιγγ
void publishMessage(const Message& msg);
void subscribeToType(const QString& type, Handler);
Lock-free message queues
16ms frame batching for 60fps UI
Auto-resolved DI container
Built-in debug visualization
π
Roadmap
Phase Deliverable Timeline
1 Microkernel Core + Pub/Sub Demo Week 1β3
2 Event Broker AI + 2 Plugin Orchestration Week 4β6
3 Intent I/O & Developer UX Polishing Week 7β9
Each phase will ship with demos, documentation, and plugin templates.
π― Get Involved
What would you build on this platform?
A voice-controlled debugger?
A multi-caret Git rebaser?
A LLM-powered syntax assistant?
π Submit a feature request or plugin idea
Letβs spark a protocol-first, AI-powered editor revolution.
Final Note
Sorry⦠The project kind of exploded in scope after Claude Code and Gemini started brainstorming.
We may have accidentally designed an OS. Completion: TBD π
Top comments (0)