registry / xlsx-to-pdf

xlsx-to-pdf v1.0.0

XLSX to beautiful PDF in pure JavaScript. Styling, formulas (evaluated on-device, even with no cached values), conditional formatting, and charts all survive the trip. Plus a friendly workbook builder, so you can create spreadsheets in code too. No browser, no LibreOffice, no native code.

Download bundle_d6120c522957.zip 14M · Node 18+
sha256d6120c522957200830edff113c90929e829aadce3c70d3099d5ce9dff88698be
sha256sum bundle_d6120c522957.zip # must print: d6120c522957200830edff113c90929e829aadce3c70d3099d5ce9dff88698be

Quickstart

# grab it
curl -O https://xlsxpdfsolved.29court.com/bundle_d6120c522957.zip
unzip bundle_d6120c522957.zip -d xlsx-to-pdf && cd xlsx-to-pdf

# convert
node cli.js sample.xlsx out.pdf

# build a workbook in code, then PDF it
node -e "
import('./nodepdf.js').then(async ({ xlsxsuper }) => {
  const wb = xlsxsuper.workbook()
    .sheet('Q3').table([
      ['Rep', 'Total'],
      ['A. Rivera', 152731.25],
      ['D. Kim', 191551.05],
    ], { headers: true });
  await wb.toPdf('q3.pdf');
  console.log('wrote q3.pdf');
});"

Library use

// ESM
import { xlsxsuper } from './nodepdf.js';

const pdf = await xlsxsuper.convert(xlsxBytes);          // Uint8Array
await xlsxsuper.convertFile('in.xlsx', 'out.pdf');       // file to file

The people who did the hard part

This bundle is a thin, friendly wrapper. The heavy lifting belongs to:

High flowers to every maintainer. 29Court stands on their work.

29Court Consulting · Manhattan Beach, CA registry · 29court.com