GroupDocs.Total for Node.js via Java 26.8 Release Notes

This is the first public release of GroupDocs.Total for Node.js via Java.

Version 26.8 ships all GroupDocs on-premise document APIs in a single Node.js package (powered by Java). View, convert, compare, merge, edit, sign, annotate, redact, search, and more — without installing a separate package for each product. The suite covers 200+ file formats across documents, spreadsheets, presentations, PDF, images, email, archives, CAD, and more.

This release is based on GroupDocs.Total for Java 26.8 and is published as @groupdocs/groupdocs.total on npm.

Installation

You need Node.js (LTS recommended) and a Java Runtime Environment (JRE) 8 or later on PATH. Windows, Linux, and macOS are supported. No Microsoft Office, Adobe Acrobat, or other desktop apps are required for core document processing.

npm i @groupdocs/groupdocs.total

The install step also downloads the Total library used by the Node.js bridge.

Quick start

Convert a DOCX to PDF:

const groupdocs = require('@groupdocs/groupdocs.total');
const java = require('java');

const PdfConvertOptions = java.import('com.groupdocs.conversion.options.convert.PdfConvertOptions');
const converter = new groupdocs.Converter('sample.docx');
converter.convert('converted.pdf', new PdfConvertOptions());
converter.close();

Without a license the APIs run in evaluation mode (trial limitations). Apply a GroupDocs.Total for Node.js via Java (or Total Product Family) license once at startup — it covers every product in the suite:

const { License } = require('@groupdocs/groupdocs.total');

License.setLicense('GroupDocs.Total.lic');

Request a free temporary license to evaluate without limitations.

Products included in this release

The v26.8 embeds the following products:

ProductVersionWhat you can doDocumentationRelease Notes
Viewer26.5Render documents to HTML, PDF, PNG, JPEGDocsRelease notes
Conversion26.6Convert between Office, PDF, images, email, and moreDocsRelease notes
Comparison26.5Diff documents and review changesDocsRelease notes
Merger26.4Merge, split, reorder, and rotate pagesDocsRelease notes
Editor26.7Edit documents through an HTML round-tripDocsRelease notes
Signature26.5Apply electronic and digital signaturesDocsRelease notes
Annotation25.6Annotate PDF and Office filesDocsRelease notes
Watermark26.4Add, search, and remove watermarksDocsRelease notes
Metadata26.7Read, update, and remove file metadataDocsRelease notes
Parser26.5Extract text, images, and structured dataDocsRelease notes
Redaction26.7Mask or remove sensitive contentDocsRelease notes
Search26.6Full-text index and searchDocsRelease notes
Markdown26.5Work with Markdown documentsDocsRelease notes

Typical things developers combine in one application:

  • Preview uploads in the browser (Viewer → HTML/PNG)
  • Normalize formats before storage (Conversion → PDF)
  • Show document revisions (Comparison)
  • Assemble reports from several files (Merger)
  • Let users edit content in a web UI (Editor)
  • Sign contracts (Signature)
  • Strip author/metadata before sharing (Metadata / Redaction)
  • Extract text for search or RAG (Parser / Search)

If you only need one capability, dedicated packages such as @groupdocs/groupdocs.viewer remain available. Choose Total when you want several products under one dependency and one license.

Code examples

Main entry points (Viewer, Comparer, Merger, …) are exported from the package. Option and helper classes are loaded with java.import('fully.qualified.ClassName') after require('@groupdocs/groupdocs.total').

View a DOCX as HTML

const groupdocs = require('@groupdocs/groupdocs.total');
const java = require('java');

const HtmlViewOptions = java.import('com.groupdocs.viewer.options.HtmlViewOptions');
const viewer = new groupdocs.Viewer('sample.docx');
viewer.view(HtmlViewOptions.forEmbeddedResources('page_{0}.html'));
viewer.close();

Compare two documents

const groupdocs = require('@groupdocs/groupdocs.total');

const comparer = new groupdocs.Comparer('proposal_v1.docx');
comparer.add('proposal_v2.docx');
comparer.compare('proposal_diff.docx');
comparer.close();

Merge PDFs

const groupdocs = require('@groupdocs/groupdocs.total');

const merger = new groupdocs.Merger('part1.pdf');
merger.join('part2.pdf');
merger.save('merged.pdf');
merger.close();

Sign a PDF

const groupdocs = require('@groupdocs/groupdocs.total');
const java = require('java');

const TextSignOptions = java.import('com.groupdocs.signature.options.sign.TextSignOptions');
const signature = new groupdocs.Signature('sample.pdf');
signature.sign('signed.pdf', new TextSignOptions('Approved'));
signature.close();

Extract text (Parser)

const groupdocs = require('@groupdocs/groupdocs.total');

const parser = new groupdocs.Parser('sample.pdf');
const reader = parser.getText();
if (reader) {
  console.log(reader.readToEnd());
  reader.close();
}
parser.close();

Runnable samples for every product are in the examples repository.

How it works

This package is a thin Node.js wrapper around the GroupDocs.Total suite JAR:

  1. npm install installs the package and downloads the required Total library.
  2. require('@groupdocs/groupdocs.total') loads that library on the Java classpath.
  3. You call familiar product APIs (Viewer, Converter, Comparer, …) from Node.js through the java bridge.
ApproachWorks?
const { Viewer, Converter } = require('@groupdocs/groupdocs.total')Yes — main entry points
const { HtmlViewOptions } = require('@groupdocs/groupdocs.total')No — helpers are not all re-exported
java.import('com.groupdocs.viewer.options.HtmlViewOptions') after requireYes — class is inside the suite JAR
require('@groupdocs/groupdocs.total'); // must run first
const java = require('java');
const HtmlViewOptions = java.import('com.groupdocs.viewer.options.HtmlViewOptions');

How to download

The package is available on npm or via direct download from this website.

Feedback

We value your feedback! If you have any questions, issues, or suggestions, feel free to reach out to us through our Free Support Forum. Our team will be happy to assist you and answer any questions you may have.