Excel, Word and PowerPoint files from Node.js — no Office on the server.
One package opens, edits, recalculates and saves .xlsx and .xlsm, reads .docx and adds slides to .pptx. The SumSheet, SumDoc and SumSlide cores come as a platform package next to it: nothing compiles on install, no Microsoft Office or LibreOffice needed. Your file never leaves your machine.
Install
The package is on npm: npmjs.com/package/sumoffice.
npm adds the cores for your platform by itself (@sumofficeapp/native-darwin-arm64, -darwin-x64, -linux-x64, -linux-arm64, -win32-x64); do not install with --omit=optional. The package is an ES module: use import. Version 2026.4.3.
First result
Open a workbook, write a cell, recalculate and save; read a Word document; add a slide:
open() returns a workbook or a presentation by the file extension; save() without an argument overwrites the source file. Errors are OfficeError; the core release inside is coreVersion().
What is free
| Without a key | 30 documents per day, no expiry. |
|---|---|
| Developer key | 10,000 documents per day for 90 days from issue. To request one, write to hello@sumoffice.com with the subject “Developer key”. Put the key in SUMOFFICE_LICENSE, or the path to the key file in SUMOFFICE_LICENSE_FILE. |
| When the quota is used up | LicenseQuotaError right away, with a link to this section. No waiting, no slowdown. |
| What counts | Opening or saving a file in any of the three cores — workbooks, documents and presentations share one daily count. Edits inside an open file, however many cells you change, are not counted. |
What it does not do
- Show files to people. There is no viewer or browser editor in the package:
view(path)answers where to get the SumOffice server, or uploads the file to your server and returns the editor link. - Run VBA macros. It keeps them, byte for byte.
- Convert to PDF or render page images in this release.
- Edit Word text through the short API. Reading is one call; editing goes through the low-level
Session.
When people need to see the files
The library makes and changes files inside your program. Showing them to people and letting them edit is a job for the rest of SumOffice:
- In the browser — the SumOffice server. The files your code generates open in SumSheet, SumDoc and SumSlide editors in the browser; several people can edit at once and the result comes back as a new version. How the server works · connect it to Nextcloud, ownCloud, Seafile, Moodle, Odoo.
- On the computer — the desktop apps. SumSheet, SumDoc and SumSlide for macOS and Windows. Download.
- Inside your own product — SumOffice Embedded. The same editors built into your web or mobile app. SumOffice Embedded.