Plugins for SnapDOM.
Choose a plugin by its output or by what it changes in the capture. PDF, Vector and Stream have their own packages; the other twelve ship as the toolbox. All are MIT-licensed.
Install
npm install @zumer/snapdom@latest @zumer/snapdom-plugins@latestThis installs SnapDOM and the toolbox. For PDF, Vector or Stream, install its package instead of the toolbox; its page has the command. All official plugins need SnapDOM 3.4.0 or newer within 3.x.
For example, install @zumer/snapdom-pdf alongside the toolbox to redact a report before exporting it:
npm install @zumer/snapdom-pdfimport { snapdom } from '@zumer/snapdom'
import { redactInputs } from '@zumer/snapdom-plugins/redact-inputs'
import { pdf } from '@zumer/snapdom-pdf'
const el = document.querySelector('#report')
const result = await snapdom(el, { plugins: [redactInputs(), pdf()] })
const blob = await result.toPdf({ page: 'a4' })Plugins by job
Prepare plugins change the clone before it renders; the others add an export method to the result, and Stream keeps a canvas in step with the element.
Prepare
Change what the capture shows. The live page is never touched.
Export
Other outputs from the same capture.
Record
Record the live element over time.
Context
Structured output for coding agents and visual QA.
Community plugins
Maintained by their authors. Check the supported SnapDOM versions before using one with 3.x. To add yours, open a pull request with a row in community-plugins.md; CONTRIBUTING_PLUGINS.md says what a row needs.
| Plugin | What it does | Category | npm | Author |
|---|---|---|---|---|
| snapdom-html2pdf-plugin | Exports a webpage to PDF through html2pdf.js | export | snapdom-html2pdf-plugin | jswhisperer |
| figma-restoration-mcp-vue-tools | Figma component restoration MCP kit with SnapDOM-powered screenshots and diff analysis | integration | Yujie Wu |
Build your own
A plugin is an object with hooks. The plugin guide walks through one, and PLUGIN_SPEC.md is the contract: hook order, what each hook receives, and what it may change.