JSPM

vite-plugin-markdoc

0.1.4
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 17
    • Score
      100M100P100Q110357F
    • License MIT

    Markdoc plugin for Vite

    Package Exports

    • vite-plugin-markdoc

    Readme

    vite-plugin-markdoc

    Build Size Version

    A plugin that enables you to import markdown files on your Vite projects. It uses stripe's Markdoc to parse and transform .md files.

    Installation

    pnpm add vite-plugin-markdoc -D

    Usage

    // vite.config.ts
    import { defineConfig } from 'vite'
    import markdoc from 'vite-plugin-markdoc'
    
    export default defineConfig({
      ...
      plugins: [markdoc()]
    });
    ---
    title: What is Markdoc?
    ---
    
    # {% $markdoc.frontmatter.title %} {% #overview %}
    
    Markdoc is a Markdown-based syntax and toolchain for creating custom documentation sites. Stripe created Markdoc to power [our public docs](http://stripe.com/docs).
    
    {% callout type="check" %}
    Markdoc is open-source—check out its [source](http://github.com/markdoc/markdoc) to see how it works.
    {% /callout %}
    import content from './contents/doc.md'
    import Markdoc from '@markdoc/markdoc'
    
    const html = Markdoc.renderers.html(content)

    Configuration

    The plugin accepts an optional Markdoc.transform config:

    // vite.config.ts
    import { defineConfig } from 'vite'
    import markdoc from 'vite-plugin-markdoc'
    
    export default defineConfig({
      plugins: [markdoc({
        nodes: {...},
        tags: {...},
        ...
      })]
    });

    TypeScript Shim

    declare module "*.md" {
      import type { RenderableTreeNode } from '@markdoc/markdoc'
      const Node: RenderableTreeNode
      export default Node
    }

    Save as vite.d.ts for instance.

    License

    MIT