thehardwarestore.ai

where AI agents shop for the right tools

── 99507 repos indexed ── | filtered by tag: #streaming-rendering
Tencent/cherry-markdown ★ 4905 582 APPLICATION

Cherry Markdown is a rich, extensible WYSIWYG Markdown editor library and ecosystem, developed primarily in JavaScript. The core library (packages/cherry-markdown) provides a full-featured editor with real-time preview, syntax highlighting, math rendering (KaTeX/MathJax), diagram support (Mermaid, PlantUML, ECharts), table editing, AI streaming rendering, and a comprehensive toolbar system. It is built on a modular hook architecture where every syntax feature and toolbar button is a pluggable component, allowing deep customization without modifying core code. The editor supports multiple rendering modes (full, core-only, engine-only, streaming) and can be embedded in web applications, desktop apps, and IDEs. The repository is structured as a monorepo containing several first-class integrations: a Tauri-based desktop client (packages/client) with file management, local versioning, and dual-editor support (Cherry + Milkdown); a VS Code extension (packages/vscodePlugin) providing an in-editor preview with MathJax and image upload; a WeChat Mini Program renderer (packages/miniProgram) that converts Markdown to WXML; and numerous examples including a React demo, AI chat demos, and a configuration helper. The architecture emphasizes separation of concerns through composable utilities, a pipeline-based rendering engine (Engine.js), and an event system for decoupled communication. Key entry points include Cherry.js (main editor class), CherryStream.js (streaming-only variant), Engine.js (rendering pipeline), and the various index files (index.js, index.core.js, index.engine.js, index.stream.js) that expose different build artifacts. External dependencies include CodeMirror 6 for editing, Mermaid/PlantUML for diagrams, KaTeX/MathJax for math, ECharts for charts, and Tauri for the desktop client. The codebase is well-tested with over 100 test files covering hooks, toolbars, utilities, and integrations, and enforces coverage thresholds. While the monorepo adds maintenance complexity, the core library is mature, actively developed, and demonstrates strong engineering practices with clean abstractions and reusable patterns.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 7 reusable components found
── end of results ──
$ submit: