npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dynamsoft-document-viewer

v3.2.0

Published

Dynamsoft Document Viewer (DDV) is an SDK designed to provide different types of viewers to configure and achieve different processing flows for documents.

Readme

Dynamsoft Document Viewer

version downloads jsdelivr

Table of Contents

Introduction

Dynamsoft Document Viewer (DDV) is a browser-based JavaScript SDK designed for viewing and editing images and PDFs. It provides a wide range of functionalities, including PDF annotation, page manipulation, image quality enhancement, and document saving. To see it in action, please visit this online demo.

Security

Dynamsoft Document Viewer does not rely on any external third-party JavaScript library. All processing, such as rendering and editing, is securely performed within the browser. This architecture eliminates the need for a server-side backend, ensuring security compliance and scalability.

Browser and Platform Compatibility

Dynamsoft Document Viewer is designed to work seamlessly across different browsers and platforms. It is compatible with major browsers like Chrome, Firefox, Safari, and Edge, ensuring a consistent user experience. Additionally, it supports various operating systems, including Windows, macOS, Linux, iOS, and Android, allowing users to access documents from any device.

Supported File Types

Users can open, edit, and save PDFs, as well as images in various formats, such as JPEG, PNG, and TIFF.

Annotation Types

Dynamsoft Document Viewer supports a variety of annotation types to enhance document interaction and collaboration. Users can add, edit, and delete annotations such as:

  • text
  • highlight
  • underline
  • strikeout
  • shape
  • stamp
  • freehand drawing

Data Management Concepts

Dynamsoft Document Viewer organizes data using two main concepts: "document" and "page". A document can contain one or multiple pages, and each page must belong to a single document.

  • Page: The smallest unit of data management, currently represented as an image. Each page has a unique pageUid.
  • Document: A collection of pages, each with a unique docUid. Documents collectively make up the entire data set. Managing data, therefore, involves managing documents and pages.

If you are using the default UI of DDV, data processing and management are handled internally.

UI Customization

The SDK offers extensive customization options, enabling developers to tailor the UI to meet specific application needs and branding requirements.

Designed to Support Diverse Document Workflows

Dynamsoft Document Viewer is built to support a wide range of document-centric workflows with its document viewing, editing, and scanning features. It has four built-in viewer types to suit different use cases:

  • Edit Viewer: Enables viewing and editing of documents with annotation support.
  • Capture Viewer: Integrates camera controls for streamlined, continuous capture workflows.
  • Perspective Viewer: Allows document cropping with perspective transformation.
  • Browse Viewer: Suitable for previewing multi-page documents or navigating document collections.

System Requirements

The SDK requires the following features to work:

  • WebAssembly, Blob, URL/createObjectURL, Web Workers

Supported Browsers:

The following table is a list of supported browsers based on the above requirements:

| Browser Name | PC | Mobile | | :----------: | :------------------------------: | :---------: | | Chrome | v75+ | v75+ | | Firefox | v69+ | v79+ | | Safari | v14+ | v15+ | | Edge | v79+ | v92+ |

Apart from the browsers, the operating systems may impose some limitations of their own that could restrict the use of the SDKs.

License Key

Adding the Dependency

Please refer to this article.

Creating HelloWorld

Please refer to the guide: How to create HelloWorld

Complete code:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>DDV - HelloWorld</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/dynamsoft-document-viewer@latest/dist/ddv.css">
    <script src="https://cdn.jsdelivr.net/npm/dynamsoft-document-viewer@latest/dist/ddv.js"></script>
</head>
<style>
    html,body {
        width: 100%;
        height: 100%;
        margin:0;
        padding:0;
        overscroll-behavior-y: none;
        overflow: hidden;
    }

    #container {
        width: 100%;
        height: 100%;
    }
</style>
<body>
    <div id="container"></div>
</body>
<script type="module">
    (async () => {
        // Public trial license which is valid for 24 hours
        // You can request a 30-day trial key from https://www.dynamsoft.com/customer/license/trialLicense/?product=ddv
        Dynamsoft.DDV.Core.license = "DLS2eyJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSJ9";
        Dynamsoft.DDV.Core.engineResourcePath = "https://cdn.jsdelivr.net/npm/dynamsoft-document-viewer@latest/dist/engine";
        await Dynamsoft.DDV.Core.init();
        const editViewer = new Dynamsoft.DDV.EditViewer({
            container: "container",
            uiConfig: Dynamsoft.DDV.getDefaultUiConfig("editViewer"),
        });
    })();
</script>
</html>

Documentation

Contact Us

Contact Dynamsoft to resolve any issue you encounter with the library.

License Agreement

https://www.dynamsoft.com/company/license-agreement/

Changelog

Check out the release notes of the Dynamsoft Document Viewer.