LearnNewsExamplesServices
Frontmatter
id8069
titleRefactor Renderer Architecture and Consolidate Markdown Logic
stateClosed
labels
airefactoringarchitecture
assigneestobiu
createdAtDec 9, 2025, 3:27 PM
updatedAtDec 9, 2025, 3:55 PM
githubUrlhttps://github.com/neomjs/neo/issues/8069
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtDec 9, 2025, 3:55 PM

Refactor Renderer Architecture and Consolidate Markdown Logic

Closed v11.17.0 airefactoringarchitecture
tobiu
tobiu commented on Dec 9, 2025, 3:27 PM

The current src/code/renderer/ hierarchy is an abstraction that doesn't fit the actual usage patterns. The Base renderer logic is entirely specific to Markdown component management, while the Neo renderer is a simple code executor.

This ticket aims to simplify the architecture by:

  1. Merging src/code/renderer/Markdown.mjs into src/component/Markdown.mjs: The component should own the rendering logic directly.
  2. Deleting src/code/renderer/Markdown.mjs: It will be obsolete.
  3. Deleting src/code/renderer/Base.mjs: Its purpose vanishes with the removal of the Markdown renderer.
  4. Refactoring src/code/LivePreview.mjs:
    • Remove the "renderer" abstraction/loading logic.
    • Directly use Neo.component.Markdown for markdown content.
    • Update how NeoRenderer (or its successor) is used for Neo code execution.
  5. Renaming/Refactoring src/code/renderer/Neo.mjs: It should likely become a standalone helper (e.g., src/util/NeoCodeExecutor.mjs or similar) since it no longer needs to be part of a "renderer" class hierarchy.

Goal: Remove the leaky "renderer" abstraction, simplify LivePreview, and fully encapsulate markdown logic within its component.

tobiu added the ai label on Dec 9, 2025, 3:27 PM
tobiu added the refactoring label on Dec 9, 2025, 3:28 PM
tobiu added the architecture label on Dec 9, 2025, 3:28 PM
tobiu assigned to @tobiu on Dec 9, 2025, 3:31 PM
tobiu referenced in commit f3f3abe - "Refactor Renderer Architecture and Consolidate Markdown Logic #8069" on Dec 9, 2025, 3:54 PM
tobiu closed this issue on Dec 9, 2025, 3:55 PM