Add HTML, context for agents, PDF and recordings to SnapDOM. Transform captures with filters, timestamps and input redaction, or build your own plugin.
PDF Pro adds selectable, searchable text and pagination. Vector exports editable shapes and text for SVG and Figma. Each is a separate paid plugin.
From $19.50 for the first year, then $39/year. First 30 purchases across both plugins. Ends , or when sold out.
// Select plugins to see the code
npm i @zumer/snapdom@latest
npm i @zumer/snapdom-plugins@latest
<script type="importmap">
{ "imports": {
"@zumer/snapdom":
"https://unpkg.com/@zumer/snapdom@latest/dist/snapdom.mjs"
} }
</script>
<script type="module">
import { snapdom } from '@zumer/snapdom';
import { filter } from
'https://esm.sh/@zumer/snapdom-plugins@latest/filter?external=@zumer/snapdom';
</script>
Use matching core and plugin versions. The import map lets recording plugins share the same core runtime.
Adds a timestamp to the capture, with configurable date formats and positions.
Applies CSS filters to the capture, using presets or a custom filter string.
Replaces text in the capture using strings or regular expressions.
Tints the capture with a color overlay. Set the color and opacity.
Converts the capture to ASCII art with toAscii(). Set the width, character set and contrast direction.
Exports the capture as a JPEG embedded in a downloadable PDF, in portrait or landscape.
Returns an annotated image and a map of interactive elements, with names, roles and bounding boxes.
Exports a text outline or JSON tree with text, roles, states and optional bounding boxes.
Masks fields, hides private blocks and removes named attributes from images, HTML and structured exports.
Exports a self-contained HTML snapshot with styles, fonts and images inlined.
Records the live element frame by frame and returns an animated GIF with toGif().
Records the live element with toMp4(). The browser selects a supported MP4 or WebM format.
Built something with SnapDOM? Tag your repo with the snapdom-plugin GitHub topic to make it discoverable, then open a PR to list it here.
Build a plugin and add it here. Just open a PR adding one line to community-plugins.md.
Use lifecycle hooks to transform captures and register custom exporters. Start with the template and the plugin specification.
npx degit zumerlab/snapdom/packages/plugin-template my-pluginexport function myPlugin() {}Add a line to community-plugins.md