Skip to main content

Charm Editor Documentation

Welcome to the official documentation for Charm Editor
This documentation describes the system architecture, core concepts, and internal modules of the project.


What is Charm Editor?

Charm Editor is a modular, extensible shader-oriented code editor designed with a strong architectural foundation:

  • Strict separation between Core / UI / Infrastructure
  • Support for multiple Editor Engines (Monaco, CodeMirror)
  • First-class LSP integration
  • Multi-runtime support: Web and Desktop (Electron)

The project prioritizes long-term maintainability and scalability over short-term convenience.


Tech Stack

Charm Editor is built with a modern, high-performance stack:


Documentation Structure

The documentation is organized into clear, focused sections:

🧭 Architecture

🧱 Core & Internals

🔌 Platform

🗺️ Roadmap

📘 Glossary


Where to Start


Notes

  • This documentation targets developers, not end users
  • All diagrams are authored using Mermaid
  • All major architectural decisions are documented in DECISIONS

The purpose of this documentation is not only to explain what exists,
but also why the system is designed this way.