# dtjohnson/xlsx-populate

Excel XLSX parser/generator written in JavaScript with Node.js and browser support, jQuery/d3-style method chaining, encryption, and a focus on keeping existing workbook features and styles in tact.

Repository: https://github.com/dtjohnson/xlsx-populate
Canonical: https://ross.abutalabs.com/products/xlsx-populate
Language: JavaScript
License: MIT
License Family: permissive
Topics: javascript, excel, xlsx
Last push: 2024-03-12T10:01:25+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 4203, "days_push": 904, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1003, forks 199 (observed 2026-09-03T02:15:11.409902+00:00)

## What it is
A JavaScript library for parsing and generating Excel XLSX files, usable in both Node.js and the browser. It preserves existing workbook features and styles, supports method chaining, and can read and write encrypted workbooks.

## Use cases
- populate an Excel template with data in Node.js
- read and parse xlsx files in JavaScript
- generate Excel reports from a web app
- edit existing spreadsheets without losing formatting
- serve generated xlsx files from Express
- open password-protected Excel files in the browser

## When to choose
- you need to modify existing XLSX files while preserving styles and features
- you want a lightweight pure-JS Excel library that works in Node and the browser
- you need workbook encryption/password support
- you prefer a fluent, chainable API for building spreadsheets

## When to avoid
- you need features the library explicitly lacks, like charts or pivot tables
- you need heavy-duty reading/writing of very large spreadsheets at high performance
- you need CSV or other spreadsheet formats, not just XLSX
- you need a library under very active development

## Facets
- artifact type: library
- maturity: maintenance
- function: parser, serialization, cryptography
- domain: files, spreadsheets, web-development, developer-tools
- platform: browser, cross-platform
- tags: excel, xlsx, spreadsheet, workbook, method-chaining, encryption, template-population, styles, nodejs, javascript

## Member repositories
- dtjohnson/xlsx-populate (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-09-03T02:15:11.409902+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:16:05.965088+00:00, confidence not recorded.
  - readme: https://github.com/dtjohnson/xlsx-populate (fetched 2026-09-03T02:15:11.409902+00:00, sha fb81e8584b05)
  - registry_npm: https://registry.npmjs.org/xlsx-populate (fetched 2026-08-29T13:14:15.968067+00:00, sha 95708f43c067)
- Data as of 2026-08-30T08:39:29.467469+00:00.
