OpenOOXML
Open-source DOCX, XLSX & PPTX editors for the web.
$
npm install @openooxml/docx01 Usage
Render and edit a document
Load a .docx file, mount the editor into any element, save back to the same format.
editor.ts
import { DocxEditor } from "@openooxml/docx";
const editor = new DocxEditor({
container: document.querySelector("#editor"),
document: await fetch("/report.docx").then((r) => r.arrayBuffer()),
});
editor.on("change", () => {
const bytes = editor.save(); // Uint8Array, valid .docx
});// TODO: illustrative snippet — final v1 API is documented on GitHub
02 Packages
One package per format
Everything ships under the @openooxml npm scope. A Rust/WASM core (v2) is in development.
03 Continuity
Continuing eigenpal
eigenpal was a popular Apache 2.0 DOCX editor, deprecated when its maintainers moved to a commercial product. OpenOOXML is the community continuation — forked from the last open release, API-compatible, and staying Apache 2.0.
Existing projects can switch without touching a single import:
$
Migration guide →npm i @eigenpal/docx-editor-core@npm:@openooxml/docx