awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
zumerlab avatar

zumerlab/snapdom

0
View on GitHub↗
7,902 stele·286 fork-uri·JavaScript·MIT·5 vizualizărisnapdom.dev↗

Snapdom

Snapdom is a DOM capture engine that serializes live web page elements into images, videos, documents, and other formats. It converts any DOM subtree into PNG, JPG, WebP, SVG, PDF, or self-contained HTML, and can record animating elements as video files or animated GIFs using the browser's MediaRecorder API.

The library distinguishes itself through a plugin-based architecture that allows custom output format handlers and pipeline hooks to extend the capture process without re-cloning the source element. It manages separate caches for images, styles, and fonts with preloading and clearing methods to optimize memory and rendering speed, and resolves cross-origin assets through a configurable proxy to avoid canvas taint. Snapdom also supports visual regression testing by comparing captured subtrees against saved baselines, and can generate annotated screenshots with bounding boxes for use with large language models.

Additional capabilities include CSS effect rendering for transforms, shadows, clip-paths, blend modes, masks, and pseudo-elements, as well as font embedding to preserve original typography. The capture pipeline supports dimension and scale control, node filtering, form value capture, text find-and-replace, and timestamp overlays, with a reusable composable hook pattern for declarative use in component frameworks.

Features

  • DOM Subtree Capture and Exports - Captures any DOM subtree as a self-contained representation and exports it to multiple formats.
  • DOM Subtree Animated Recordings - Records animating DOM elements as video files or animated GIFs using browser capture APIs.
  • DOM-to-Image Converters - Converts any DOM element into PNG, JPG, WebP, SVG, or PDF formats.
  • Raster Image Exports - Renders DOM subtrees to PNG, JPG, or WebP bitmap formats for download or further use.
  • Multi-Format Image Exports - Converts captured DOM representations into PNG, JPG, WebP, SVG, Canvas, or Blob output.
  • DOM Export Plugins - Ships a plugin system for adding custom output formats and pipeline hooks to the DOM capture process.
  • DOM Element PNG Captures - Captures any DOM subtree as a PNG image by attaching a ref and calling a single function.
  • DOM Subtree Renderers - Clones and serializes a live DOM subtree with styles, images, and fonts for self-contained export.
  • DOM Subtree Capture Engines - Captures, modifies, and exports DOM subtrees as images, videos, or documents.
  • DOM-to-Canvas Renderers - Provides a DOM-to-canvas rendering pipeline that serializes live DOM subtrees into canvas representations.
  • Screenshot Generators - Generates high-fidelity screenshots of DOM elements with embedded styles and fonts.
  • Captured Element Downloads - Triggers a browser download of the captured element as an image file in a chosen format.
  • Multi-Format Exports - Routes a single cloned DOM subtree through multiple output converters without re-cloning the source element.
  • Single-Capture - Clones the DOM element once and exports it to multiple formats without re-cloning the source.
  • DOM Subtree JPG Exports - Exports DOM subtrees as JPEG images for compressed raster output.
  • Font Inlining - Inlines font-face rules and icon fonts into captured output to preserve original typography.
  • DOM Subtree - Captures animating DOM elements frame by frame and encodes them into animated GIFs.
  • Animation Frame Capturers - Captures frame-by-frame changes of animating DOM elements and encodes them into animated GIFs or video files.
  • Captured Image Downloads - Downloads the captured image directly as a file with a specified format and filename.
  • DOM Subtree SVG Captures - Converts DOM subtrees into SVG documents preserving layout, styles, and fonts.
  • DOM Subtree SVG Exports - Exports DOM subtrees as SVG for scalable vector output.
  • DOM Subtree Video Recordings - Captures animating DOM elements to video via the native MediaRecorder API.
  • Export Pipeline Plugins - Provides a plugin system for registering custom output format handlers and pipeline hooks in the capture process.
  • Pipeline Plugins - Registers custom hooks that run at each stage of the capture and export process.
  • Capture - Extends the capture and export process with custom hooks and output format plugins.
  • Composable Capture Hooks - Ships a reusable composable hook that wraps the DOM capture lifecycle for declarative use in component frameworks.
  • Capture Format Plugins - Defines new output methods that become available on the capture result object via a plugin system.
  • Visual Regression Testing - Compares captured DOM subtrees against saved baselines to detect visual differences in web interfaces.
  • Computed Style Renderers - Renders CSS transforms, shadows, clip-paths, blend modes, masks, and pseudo-elements into captured output.
  • CSS Effect Renderers - Renders CSS transforms, shadows, clip-paths, blend modes, masks, and pseudo-elements into captured output.
  • DOM Subtree Blob Captures - Converts a selected DOM element into a Blob object for uploading or further processing.
  • PNG Captures - Converts DOM elements into PNG images with optional retina resolution support.
  • Web-Compatible Font Embedding - Downloads and inlines web fonts into captured output to preserve original typography.
  • DOM Node Filtering - Excludes specific DOM elements from capture using CSS selectors or custom filter functions.
  • DOM Video Frame Captures - Draws the current frame of a video element so it can be captured like any other DOM node.
  • DOM Subtree Video Recordings - Records animating DOM subtrees as video files or animated GIFs using the MediaRecorder API.
  • JavaScript 框架汇总 - Listed in the “JavaScript 项目” section of the Great Open Source Project awesome list.

Istoric stele

Graficul istoricului de stele pentru zumerlab/snapdomGraficul istoricului de stele pentru zumerlab/snapdom

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face zumerlab/snapdom?

Snapdom is a DOM capture engine that serializes live web page elements into images, videos, documents, and other formats. It converts any DOM subtree into PNG, JPG, WebP, SVG, PDF, or self-contained HTML, and can record animating elements as video files or animated GIFs using the browser's MediaRecorder API.

Care sunt principalele funcționalități ale zumerlab/snapdom?

Principalele funcționalități ale zumerlab/snapdom sunt: DOM Subtree Capture and Exports, DOM Subtree Animated Recordings, DOM-to-Image Converters, Raster Image Exports, Multi-Format Image Exports, DOM Export Plugins, DOM Element PNG Captures, DOM Subtree Renderers.

Care sunt câteva alternative open-source pentru zumerlab/snapdom?

Alternativele open-source pentru zumerlab/snapdom includ: tsayen/dom-to-image — dom-to-image is a programmatic tool for capturing the visual state of HTML elements as downloadable images or raw… bubkoo/html-to-image — html-to-image is a JavaScript library and client-side screenshot utility that transforms DOM elements into image… niklasvh/html2canvas — This project is a browser-based rendering engine that captures visual snapshots of web page elements. It functions as… garris/backstopjs — BackstopJS is an automated screenshot testing framework and visual regression testing tool designed to identify… sindresorhus/pageres — Pageres is an automated web page capturer and command line interface that renders HTML content and websites into… nexu-io/html-anything — This project is an LLM HTML artifact generator and sandboxed previewer designed for rapid prototyping and content…

Alternative open-source pentru Snapdom

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Snapdom.
  • tsayen/dom-to-imageAvatar tsayen

    tsayen/dom-to-image

    10,777Vezi pe GitHub↗

    dom-to-image is a programmatic tool for capturing the visual state of HTML elements as downloadable images or raw image data. It functions as a DOM to image converter that renders specific nodes as base64 data URLs, binary blobs, or pixel arrays. The library transforms HTML elements into raster or vector images by utilizing the HTML5 canvas API. It can retrieve raw byte arrays of a DOM node for low-level image manipulation as an RGBA pixel data extractor. The project covers web content rasterization and the generation of dynamic screenshots from live HTML content. It handles the conversion o

    JavaScriptcanvascssdom
    Vezi pe GitHub↗10,777
  • bubkoo/html-to-imageAvatar bubkoo

    bubkoo/html-to-image

    7,033Vezi pe GitHub↗

    html-to-image is a JavaScript library and client-side screenshot utility that transforms DOM elements into image formats such as PNG, JPEG, or SVG. It functions as a DOM-to-canvas renderer, using the browser's native rendering capabilities to convert document nodes into rasterized images or canvas elements. The library leverages SVG foreignObject serialization to capture live DOM content, which is then rasterized into pixel-based formats. It includes specialized exporters for generating binary Blobs or raw RGBA pixel data as typed arrays. The tool provides configurations for image appearance

    TypeScriptcanvasdataurldom
    Vezi pe GitHub↗7,033
  • niklasvh/html2canvasAvatar niklasvh

    niklasvh/html2canvas

    31,881Vezi pe GitHub↗

    This project is a browser-based rendering engine that captures visual snapshots of web page elements. It functions as a document object model to canvas renderer, programmatically reconstructing the visual appearance of web content by interpreting CSS box models and document structures directly within the client environment. The tool distinguishes itself by performing all image generation locally, eliminating the need for server-side processing or external rendering services. By simulating browser layout logic and mapping geometric shapes and text properties to pixel-based drawing commands, it

    TypeScriptdomjavascriptscreenshot
    Vezi pe GitHub↗31,881
  • garris/backstopjsAvatar garris

    garris/BackstopJS

    7,156Vezi pe GitHub↗

    BackstopJS is an automated screenshot testing framework and visual regression testing tool designed to identify pixel-level discrepancies between different versions of a web application. It functions as a browser automation testing suite that captures visual snapshots of a user interface and compares them against stored reference images to detect unintended changes. The project utilizes a containerized testing environment via Docker to ensure consistent browser rendering and prevent cross-platform visual discrepancies. It includes a web UI diffing interface that allows users to analyze visual

    JavaScript
    Vezi pe GitHub↗7,156
  • Vezi toate cele 30 alternative pentru Snapdom→