Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Install and configure Markstream streaming Markdown renderers for Vue, React, Svelte, Angular, Nuxt, Next.js, and Vue 2 applications.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-04 | ✗→✓ | ▲ Improved | 20% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 6% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 13% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 31% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 7% | 0% |
Integrate the correct Markstream streaming Markdown renderer into an existing frontend application. This skill selects the framework package, installs only requested optional peers, preserves safe HTML and Mermaid defaults, and handles CSS, streaming state, and SSR boundaries.
Read references/scenarios.md before selecting packages or optional peers.
Use this skill when the user asks to:
Before changing dependencies, inspect:
package.json;Do not select markstream-vue merely because the source repository has Vue in its name. Choose the framework-specific package from the scenario table.
Before installing or changing source files, preview the exact dependency and code changes and obtain explicit user approval. Do not switch package managers or replace an existing renderer implicitly.
Install exactly one framework package and preserve the repository's package manager. Add optional peers only when the requested UI uses their feature.
Examples:
bashnpm install markstream-vue npm install markstream-react npm install markstream-svelte npm install markstream-angular npm install markstream-vue2
For Vue 2.6, also install and register @vue/composition-api. Vue 2.7 has a built-in Composition API and must not install that plugin.
Import application resets before Markstream styles. Import package CSS explicitly instead of relying on component imports to inject it.
For Tailwind or UnoCSS, put the matching package stylesheet in a component layer:
css@import 'markstream-vue/index.css' layer(components);
When math rendering is enabled, also import:
css@import 'katex/dist/katex.min.css';
Vue CLI 4 and other Webpack 4-based Vue 2 projects do not understand package export maps. Use the published file path in those projects:
tsimport 'markstream-vue2/dist/index.css'
Prefer content for static documents and most streaming chat interfaces. Markstream's built-in smooth streaming can pace irregular token delivery without requiring the host application to maintain an AST.
Use nodes plus final only when a worker, shared AST store, custom transform, or another application layer already owns parsing.
markstream-react inside a 'use client' component for live SSE or WebSocket streams.markstream-react/next for SSR-first HTML with hydration and markstream-react/server for server-only rendering.markstream-svelte only with Svelte 5.markstream-angular version requirement.mode="chat" for AI chat, mode="docs" for rich documents, and mode="minimal" for lightweight non-chat surfaces.HTML policy defaults to safe, and Mermaid uses strict mode. Do not broaden either setting unless the user explicitly identifies a trusted legacy surface that requires it. Scope any exception to that surface.
Run the smallest relevant build, typecheck, or test command. Confirm:
Report the selected package, added peers, CSS location, streaming input choice, and validation command.
vue<MarkdownRender mode="chat" :content="markdown" :final="false" smooth-streaming="auto" :fade="false" typewriter />
vue<MarkdownRender mode="chat" :content="markdown" :final="true" :smooth-streaming="false" :fade="true" :typewriter="false" />
Setting final=true tells the parser that the document is complete; disabling pacing alone does not finalize trailing constructs.
customId or custom-id when multiple render surfaces coexist.Solution: Load resets first, then the matching Markstream stylesheet explicitly.
Solution: Set final=true when the stream finishes, not only smoothStreaming=false.
Solution: Select the root, /next, or /server entry according to the render boundary.
stream-markdown.Solution: On Vue, Vue 2, or React, configure MarkdownCodeBlockNode as the code_block override.
Other measured skills in the registry, with their headline benchmark lift.