Skip to content

QRCode

QR code generation plugin, generating QR codes from text or links.

Installation

sh
pnpm add vitepress-plugin-qrcode
sh
npm install vitepress-plugin-qrcode
sh
bun add vitepress-plugin-qrcode
sh
deno add vitepress-plugin-qrcode
sh
yarn add vitepress-plugin-qrcode

Usage

.vitepress/config.ts
ts
import { defineConfig } from 'vitepress-tuck'
import qrcode from 'vitepress-plugin-qrcode'

export default defineConfig({
  plugins: [qrcode()],
})

Learn more about vitepress-tuck

Native Mode

.vitepress/config.ts
ts
import { defineConfig } from 'vitepress'
import { qrcodeMarkdownPlugin } from 'vitepress-plugin-qrcode'

export default defineConfig({
  markdown: {
    config: (md) => {
      md.use(qrcodeMarkdownPlugin)
    },
  },
})
.vitepress/theme/index.ts
ts
import type { Theme } from 'vitepress'
import { enhanceAppWithQrcode } from 'vitepress-plugin-qrcode/client'
import DefaultTheme from 'vitepress/theme'

export default {
  extends: DefaultTheme,
  enhanceApp(ctx) {
    enhanceAppWithQrcode(ctx)
  },
} satisfies Theme

Syntax

Embed Block Syntax

md
@[qrcode](https://www.baidu.com)
@[qrcode](arbitrary text)
@[qrcode](./caniuse.md)

Styled Card Mode

md
@[qrcode card title="Scan to visit"](https://www.baidu.com)

Container Syntax

Suitable for long text:

md
::: qrcode title="Scan to visit"
https://www.baidu.com
:::

Attribute Reference

AttributeTypeDescription
cardbooleanDisplay in card mode
titlestringCard title
logostringQR code logo, link format, optional
logoSizenumberLogo size ratio, optional, default 0.2
widthnumberQR code width, optional

Examples

md
@[qrcode](https://www.baidu.com)

Internal links auto-add logo:

md
@[qrcode](./file-tree.md)

Using card mode:

md
@[qrcode card title="Scan to visit File Tree Plugin"](./file-tree.md)

Released under the MIT License