Office documents, in your app.

Tumbler gives you TypeScript models and Svelte components for reading, rendering, and editing Word documents and spreadsheets.

Open a file, render its contents, and export your edits. Your application owns the interface and persistence. Tumbler handles the document underneath.

Early alpha. APIs are still changing and Office compatibility is incomplete. Keep original copies of important documents.

Start with a document

Install the components alongside the document formats you need.

Terminal
bun add @tumblerjs/svelte @tumblerjs/word @tumblerjs/sheets

The installation guide walks through a complete file viewer. To inspect rendering first, open a sample in the playground.

Choose a format

Keep control of your application

The format packages work without Svelte. The components render those models and emit edit events, leaving file storage, permissions, and the surrounding UI to you.

TypeScript
import { openSpreadsheetArtifact } from '@tumblerjs/sheets';

const workbook = openSpreadsheetArtifact(bytes);
const edited = workbook.editCell('B2', 42);

const output = edited.bytes();

Read how the packages fit together, or check the current limitations before integrating.

Next Installation