Configure the Vue 3 renderer beyond generic installation: surface modes, streaming lifecycle, code rendering, long-message virtualization, and scoped overrides.
Use for a plain Vue 3 application after the package has been selected. Use markstream-nuxt when SSR-specific Nuxt boundaries matter.
Before changing dependencies or source files, inspect the existing package manager and project conventions, preview the intended edits, and obtain explicit user approval.
markstream-vue/index.css after resets.content. Use mode="chat" for AI streams, docs for rich documents, and minimal for lightweight non-chat surfaces.pre without a peer, shiki with stream-markdown, or compatibility-named monaco backed by stream-diffs.auto, no fade, and an optional cursor. On completion keep the same mode, set final, and disable pacing/cursor.nodes only for worker parsing or structural AST ownership.<script setup lang="ts">
import MarkdownRender from 'markstream-vue'
import 'markstream-vue/index.css'
defineProps<{ content: string; isDone: boolean }>()
</script>
<template>
<MarkdownRender
mode="chat"
:content="content"
:final="isDone"
:fade="isDone"
:typewriter="!isDone"
:smooth-streaming="isDone ? false : 'auto'"
html-policy="safe"
/>
</template>
Review dependency changes. Never enable trusted HTML or loose Mermaid rendering for untrusted model output.