Transform your captures with a wide range of plugins, or build and share your own in minutes.
Captured with plugins in real time
// Select plugins to see the code
npm i @zumer/snapdom
npm i @zumer/snapdom-plugins
<script type="module">
import { snapdom } from
'https://esm.sh/@zumer/snapdom';
import { filter } from
'https://esm.sh/@zumer/snapdom-plugins/filter';
</script>
Resolves lazy-loaded <picture> placeholders. Detects base64 stubs and fetches the real image before capture.
Adds a configurable timestamp label on the captured clone. Supports multiple date formats and positions.
Applies CSS filter effects to captures. Ships with presets: grayscale, sepia, blur, vintage, dramatic.
Find-and-replace text in the captured clone. Supports strings and regex patterns.
Tints the entire capture to a specified color using an overlay with mix-blend-mode.
Adds a toAscii() method that converts captures to ASCII art. Configurable width, charset, and luminance.
Exports the capture as a PNG embedded in a downloadable PDF. Supports portrait and landscape orientations.
Uses the experimental WICG drawElementImage API for direct DOM-to-canvas rendering where supported.
Build a plugin and add it here. Just open a PR adding one line to community-plugins.md.
SnapDOM's hook system gives you full control over every stage of the capture pipeline.
npx degit zumerlab/snapdom/packages/plugin-template my-pluginexport function myPlugin() {}Add a line to community-plugins.md