simon-he95/markstream-vue

markstream-vue2-cli

Integrate markstream-vue2 into a Vue 2 Vue CLI or Webpack 4 app. Use when Codex needs Webpack 4-friendly setup, CDN worker fallbacks for Mermaid or KaTeX, `dist/index.css` imports, Vue 2 composition-api shims, or code block choices limited to `stream-diffs` or plain `<pre>`.

First seen Mar 26, 2026

Installation

$ npx skills add simon-he95/markstream-vue --skill markstream-vue2-cli

Also in this package

Other skills from simon-he95/markstream-vue · top by installs.

npx skills add simon-he95/markstream-vue

Browse all from simon-he95/markstream-vue

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 3.0K
License license
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,145 B
  • docs SUMMARY.md 302 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 42 installs

SKILL.md

Markstream Vue 2 CLI

Use this skill when the host app is Vue 2 on Vue CLI or another Webpack 4-style stack.

Workflow

  1. Confirm the repo uses Vue 2 plus Vue CLI or Webpack 4-era tooling.
  2. Install markstream-vue2 and only the peers required for the requested features.
  3. Import markstream-vue2/dist/index.css in the app shell.
  4. Avoid Vite-style ?worker imports.

- Use createKaTeXWorkerFromCDN(...) and createMermaidWorkerFromCDN(...) when workers are needed.

  1. Prefer stable code block defaults over brittle wiring.

- In Webpack 4-era repos, stream-diffs (or plain <pre>) is the only code block runtime — there is no Monaco/stream-monaco fallback and no MarkdownCodeBlockNode. - Use top-level code-block-options or direct CodeBlockNode.code-block-options for the shared renderer-neutral option contract. Keep header/toolbar props in code-block-props. - For AI chat or streaming UIs, keep content and use built-in smooth streaming first. - smooth-streaming="auto" is the default and activates when typewriter=true or max-live-nodes <= 0. - typewriter only controls the blinking cursor and defaults to false. - fade controls node enter and streamed-text fade animations and defaults to true. - Streaming vs recovering history: in chat UIs the same MarkdownRender starts streaming and later switches to history when final=true. - Streaming: smooth-streaming="auto", :fade="false", typewriter=true. Smooth pacing handles gradual appearance; fade would flicker. - Recovering history: :smooth-streaming="false", :fade="true", typewriter=false. Content is already complete — pacing would slow it down, but fade gives a polished entry animation. - Dynamic switch: :smooth-streaming="isStreaming ? 'auto' : false", :fade="!isStreaming". - Move to nodes + final only for worker-preparsed content, shared AST stores, or custom AST control. - Remember that html-policy now defaults to safe, and Mermaid strict mode is on by default through mermaid-props.

  1. Validate with the smallest useful local dev or build command.

Default Decisions

  • Code block enhancement no longer depends on Monaco; worker-heavy setup applies only to Mermaid/KaTeX CDN workers.
  • Prefer CDN workers over bundler workers for Mermaid and KaTeX.
  • Keep the Vue 2 composition-api shim explicit when the repo is on Vue 2.6.
  • Keep html-policy="safe" and Mermaid strict mode unless the task is preserving trusted legacy rendering.
  • If a trusted surface needs older behavior, use html-policy="trusted" and :mermaid-props="{ isStrict: false }" only on that surface and explain why.

Useful Doc Targets

  • docs/guide/vue2-quick-start.md
  • docs/guide/vue2-installation.md
  • docs/guide/troubleshooting.md