@ponado/document-utils (0.0.9)

Published 2026-05-09 16:35:21 +03:00 by adomas

Installation

@ponado:registry=
npm install @ponado/document-utils@0.0.9
"@ponado/document-utils": "0.0.9"

About this package

@ponado/document-utils

Document processing utilities for Node.js - DOCX templates, PDF manipulation, and XLSX generation.

Installation

pnpm add @ponado/document-utils

Usage

Shared Utilities

import { escapeRegexLiteral, substituteTemplate, tag } from '@ponado/document-utils';

// Escape special regex characters
const escaped = escapeRegexLiteral('price$[test]'); // "price\\$\\[test\\]"

// Simple template substitution
const result = substituteTemplate('Hello {name}!', { name: 'World' });
// "Hello World!"

// Create tagged template literals
const t = tag({ name: 'John' });
const message = t'Hello {name}!'; // "Hello John!"

Server-side Document Processing

import {
	substituteDocxTemplate,
	extractTemplateFields,
	mergeDocxFiles,
	generateXlsx,
	fillPdfForm
} from '@ponado/document-utils/server';

// Fill DOCX template
const filledDocx = await substituteDocxTemplate(templateBuffer, {
	name: 'John',
	date: '2024-01-01'
});

// Extract template fields
const fields = await extractTemplateFields(templateBuffer);
// ['name', 'date', ...]

// Merge multiple DOCX files
const merged = await mergeDocxFiles([docx1, docx2, docx3]);

// Generate XLSX from data
const xlsx = await generateXlsx([
	{ name: 'John', age: 30 },
	{ name: 'Jane', age: 25 }
]);

// Fill PDF form
const filledPdf = await fillPdfForm(pdfBuffer, { field1: 'value1' });

Exports

  • @ponado/document-utils - Shared utilities (works in browser and Node)
  • @ponado/document-utils/server - Server-side document processing
  • @ponado/document-utils/shared - Shared utilities (same as main export)

Features

  • DOCX Templates: Fill Word documents with template variables
  • DOCX Merging: Combine multiple Word documents
  • PDF Forms: Fill PDF form fields programmatically
  • XLSX Generation: Create Excel files from JSON data
  • Template Extraction: Automatically detect template fields

Dependencies

  • docxtemplater - DOCX template processing
  • docx-merger - DOCX file merging
  • pdf-lib - PDF manipulation
  • xlsx-write-stream - XLSX generation

Dependencies

Dependencies

ID Version
docx-merger ^1.2.2
docxtemplater ^3.68.7
pdf-lib ^1.17.1
pizzip ^3.2.0
xlsx-write-stream ^1.0.3

Development dependencies

ID Version
@types/node ^20.19.40
bumpp ^11.1.0
tsdown ^0.21.10
typescript ^6.0.3
vitest ^1.6.1
Details
npm
2026-05-09 16:35:21 +03:00
23
Adomas Poniškaitis
MIT
latest
6.9 KiB
Assets (1)
Versions (2) View all
0.0.9 2026-05-09
0.0.6 2026-04-30