office-engine

View and edit DOCX, XLSX and PPTX files in the browser, no install

Version
0.4.0
Released
November 2026
Size
4.9 MB (npm package)
License
MIT ยท Open source
DevelopmentWindowsmacOSLinuxOpen source

About office-engine

office-engine is a free, open-source (MIT) TypeScript library that lets web apps open, view, edit and save DOCX, XLSX and PPTX files entirely in the browser - no server, no Office install. Files load progressively (worker-based parsing, HTTP range loading) and render in virtualized React views, so large documents stay responsive according to the author. It also ships as a framework-agnostic web component, so one line of markup adds a full document editor to any page. The author reports opening a 300,000-row spreadsheet and multi-megabyte presentations smoothly on an Apple-silicon laptop (author's measurements, not ours). Version 0.4.0 is an early release: the author flags the format coverage as still incomplete for complex files. Discovered in our office-engine discovery.

Key Features

Real-time collaboration

Live cursors and multi-user editing, with offline edits that sync on reconnect.

Full Office editing in the browser

View and edit DOCX, XLSX and PPTX with a familiar toolbar, entirely client-side.

Progressive loading for huge files

Lazy ZIP reader, HTTP range requests and a streaming parser in a Web Worker kee

Virtualized rendering

Only the visible pages, cells and slides are rendered, so large files stay responsive.

Pros & Cons

Pros

  • Free and open source (MIT)
  • No server or Office install needed
  • One-line embed (React or web component)
  • Saves back to the original format

Cons

  • Days-old project, tiny community
  • Performance figures are the author own measurements
  • Format coverage incomplete for complex files
  • Collaboration needs a self-hosted sync server

Frequently Asked Questions

Is office-engine free?

Yes. It is open source under the MIT license, published on npm as @p10node/office-engine.

Do I need Microsoft Office or a server?

No. Files are parsed and rendered in the browser; embedding it in an app needs npm and one component.

iWnhga ti tf oirnm aytosu rd ooewsn iatp ps uipsp oar td?e

DOCX, XLSX and PPTX, per the project documentation.

Quick Info

Developerp10node
LicenseMIT ยท Open source
Version0.4.0
Size4.9 MB (npm package)
Sourcep10node.github.io
Listing updated4 Nov 2026