vue-markdown-render is a simple and lightweight wrapper for markdown-it with full TypeScript support.
<template>
  <div>
    <vue-markdown :source="src" />
  </div>
</template>
<script lang="ts">
import VueMarkdown from 'vue-markdown-render'
export default defineComponent({
  name: 'MyComponent',
  components: {
    VueMarkdown
  },
  setup(props, ctx) {
    const src = ref('# header')
    return {
      src
    }
  }
})
</script>markdown-it options can be passed as an object into the VueMarkdown component:
 <vue-markdown :source="src" :options="options" />markdown-it compatible simple plugins can be passed as an array into the VueMarkdown component. Example using MarkdownItAnchor
<template>
  <vue-markdown :source="markdown" :plugins="plugins" />
</template>
<script setup>
import VueMarkdown from 'vue-markdown-render'
import MarkdownItAnchor from 'markdown-it-anchor';
const plugins = [MarkdownItAnchor];
</script>If you are using typescript, you have to add the @types/markdown-it to your dev dependencies.
npm install @types/markdown-it --save-dev