WEB PDF SDK

Accelerate web development with a powerful PDF SDK

Seamlessly integrate comprehensive document viewing, annotation, and editing capabilities into your web applications using any JavaScript framework. Enjoy fast setup and flexible deployment options tailored to your needs.

FEATURE-RICH VIEWER

Customizable for you, seamless for your users

Digital document with toolbar spanning along the top of the doc, and labels above describing the functionality of each tool in Nutrient PDF Viewer.Toolbar of web user interface explained with labels

Benefits

Build faster

Go to market faster than your competition with our straightforward setup process, extensive documentation, support resources, and ready-to-use code samples and templates.

Improve ROI

Reduce the resources associated with building and maintaining robust document technology internally. Focus your efforts on creating more value for your users.

Customize more easily

Tailor the UI to match the look and feel of your app — your customers will never know you used a third-party vendor.

Scale with security

Rest easy knowing our SDKs are completely secure, reliable, and always up to date. Our dedicated support team is always on hand, giving you peace of mind, and your users a better experience.

Relied upon by industry leaders

Autodesk logo
UBS logo
IBM logo
UBS logo
IBM logo
1import PSPDFKit from "pspdfkit";
2
3const instance = await PSPDFKit.load({
4	container: "#pspdfkit",
5	document: "<pdf-file-path>",
6	licenseKey: "YOUR_LICENSE_KEY_GOES_HERE"
7});
8
9console.log("PSPDFKit for Web is ready!");
10console.log(instance);
1const PSPDFKit = require("pspdfkit");
2
3PSPDFKit.load({
4	container: "#pspdfkit",
5	document: "<pdf-file-path>",
6	licenseKey: "YOUR_LICENSE_KEY_GOES_HERE"
7}).then(function(instance) {
8	console.log("PSPDFKit for Web is ready!");
9	console.log(instance);
10})
Changelog
1import PSPDFKit from "pspdfkit";
2
3const instance = await PSPDFKit.load({
4	container: "#pspdfkit",
5	document: "<pdf-file-path>",
6	licenseKey: "YOUR_LICENSE_KEY_GOES_HERE",
7	toolbarItems: [...PSPDFKit.defaultToolbarItems, {
8		type: "custom",
9		id: "my-button",
10		title: "My Button",
11		onPress: event => {
12			alert("hello from my button");
13		}
14	}]
15});
1const PSPDFKit = require("pspdfkit");
2
3PSPDFKit.load({
4	container: "#pspdfkit",
5	document: "<pdf-file-path>",
6	licenseKey: "YOUR_LICENSE_KEY_GOES_HERE",
7	toolbarItems: PSPDFKit.defaultToolbarItems.concat([{
8		type: "custom",
9		id: "my-button",
10		title: "My Button",
11		onPress: function(event) {
12			alert("hello from my button");
13		}
14	}])
15});
1import PSPDFKit from "pspdfkit";
2
3const instance = await PSPDFKit.load({
4container: "#pspdfkit",
5document: "<pdf-file-path>",
6licenseKey: "YOUR_LICENSE_KEY_GOES_HERE"
7});
8
9const annotation = new PSPDFKit.Annotations.LineAnnotation({
10	pageIndex: 0,
11	startPoint: new PSPDFKit.Geometry.Point({ x: 95, y: 95}),
12	endPoint: new PSPDFKit.Geometry.Point({ x: 195, y: 195}),
13	boundingBox: new PSPDFKit.Geometry.Rect({
14		left: 90,
15		top: 90,
16		width: 200,
17		height: 200,
18	}),
19});
20
21instance.createAnnotation(annotation);
1const PSPDFKit = require("pspdfkit");
2
3PSPDFKit.load({
4	container: "#pspdfkit",
5	document: "<pdf-file-path>",
6	licenseKey: "YOUR_LICENSE_KEY_GOES_HERE"
7}).then(instance => {
8	const annotation = new PSPDFKit.Annotations.LineAnnotation({
9		pageIndex: 0,
10		startPoint: new PSPDFKit.Geometry.Point({ x: 95, y: 95}),
11		endPoint: new PSPDFKit.Geometry.Point({ x: 195, y: 195}),
12		boundingBox: new PSPDFKit.Geometry.Rect({
13			left: 90,
14			top: 90,
15			width: 200,
16			height: 200,
17		}),
18	});
19
20	instance.createAnnotation(annotation);
21})

Example integration and guides

Migration guide

Deployment Options

Choose the best deployment option for your business

The Nutrient Web SDK operates fully client-side in the browser, or it can be combined with Document Engine for server-supported document streaming, real-time collaboration, and improved performance.

Web SDK

Web SDK + Document Engine

User interface

HTML5-based

HTML5-based

Deployment

Viewer: In-browser via WebAssembly

Viewer: In-browser via WebAssembly

Rendering: Self-hosted (with Docker), or managed by Nutrient

Rendering

Client-side

Server-side

Key notes

  • Deploy instantly using JavaScript files and the Baseline UI design framework
  • Handle document edits via XFDF or Instant JSON
  • Opt to keep documents offline — and in the browser — for additional security
  • On-demand page streaming for faster loading
  • Secure document access using JWTs
  • Unlocks document syncing and real-time collaboration
  • OCR and collaboration tools
  • AI Assistant available

Documentation

Get startedGet started

Client-side or server-backed

The choice is yours

WebAssembly

Our standalone Web SDK runs 100 percent in the browser using robust WebAssembly technology

Three unique blocks showing how native browser support and a web app can be assembled with Nutrient Web SDK.

Document Engine

Pair Document Engine with our Web SDK, either self-hosted (with Docker) or managed by Nutrient

Pick your perfect solution

Our Web SDK is a suite of tools made to grow with your web app. You can start with what you need now and add more tools later.

Viewing

Open all documents with high fidelity in a well-designed viewer.

Open all documents with high fidelity in a well-designed viewer.

Markup

Improve the review process with a suite of annotation tools.

Improve the review process with a suite of annotation tools.

Collaboration

Bring real-time collaboration to your documents.

Bring real-time collaboration to your documents.

Editing

Modify documents and easily edit PDF text directly in your app.

Modify documents and easily edit PDF text directly in your app.

Forms

Easy for users to fill forms. Easy for you to create them programmatically.

Easy for users to fill forms. Easy for you to create them programmatically.

Redaction

Automatically and permanently remove sensitive and personal information from documents.

Automatically and permanently remove sensitive and personal information from documents.

Signing

Streamline contract execution and approval workflows by enabling eSignatures and PDF digital signatures.

Streamline contract execution and approval workflows by enabling eSignatures and PDF digital signatures.

Generation

Effortlessly generate PDFs from HTML and DOCX.

Effortlessly generate PDFs from HTML and DOCX.

OCR and Data Extraction

Give new life to scanned documents by easily converting them into text that's selectable and searchable.

Give new life to scanned documents by easily converting them into text that's selectable and searchable.

Conversion

Easily convert any Office document, image, email, or webpage into a high-quality PDF.

Easily convert any Office document, image, email, or webpage into a high-quality PDF.

Scanning and Barcodes

Capture and process information from physical documents and products.

Capture and process information from physical documents and products.

Security and Compliance

Protect sensitive information and meet regulatory requirements within your application.

Protect sensitive information and meet regulatory requirements within your application.