Skip to content

v1.0.0 — first stable release

Choose a tag to compare

@mitresthen mitresthen released this 02 Jul 11:19

First stable release — the public API is now covered by semver: breaking changes only in major versions.

excelents is a universal, tree-shakeable, TypeScript-first spreadsheet (xlsx/csv) library with zero runtime dependencies — a ground-up rewrite of ExcelJS on web-standard APIs. It runs the same in Node ≥ 24, browsers, Deno, Bun, and edge runtimes.

Highlights (since 0.3.0)

  • ExcelJS migration scannernpx @mitresthen/excelents [path] [--json] inventories a codebase's ExcelJS usage and buckets every call site into auto-mappable / needs-restructuring / no-equivalent, each pointing into the new migration guide. Also importable from @mitresthen/excelents/migrate.
  • Browser tests in CI — the public-API suite now runs in real Chromium (Vitest browser mode) on every commit.
  • Benchmarks — reproducible excelents-vs-exceljs benchmark (pnpm bench); honest results in the README: ~2× faster reads and lower memory everywhere, writes currently slower (on the roadmap).
  • Docs — rewritten README, CHANGELOG, migration guide.

Notes

  • ESM-only, Node ≥ 24 (browsers/Deno/Bun/edge via web-standard APIs).
  • Deliberately out of scope vs ExcelJS: cell comments, pivot tables, encryption, page setup/printing, protection — see the README for the full list and roadmap.

Full changelog: v0.3.0...v1.0.0