Skip to content

EtherCalc

EtherCalc is a real-time, multi-user spreadsheet server. This documentation covers the TypeScript rewrite that runs on Cloudflare Workers with Durable Objects, D1, KV, and R2 — and can also be self-hosted with a standalone workerd container.

Terminal window
git clone https://github.com/audreyt/ethercalc
cd ethercalc && bun install
bun run --cwd packages/worker dev # wrangler dev on http://127.0.0.1:8787

Open http://127.0.0.1:8787/_new to create a sheet.

ConcernLegacy (Node + Redis)New (Workers)
HTTPExpress 3 / zappajsHono on Workers
Live statein-memory + RedisDurable Object per room
Realtimesocket.io 0.9/1.xnative WebSocket (JSON) + legacy shim
Self-hostNode + Redis composestandalone workerd image

The public HTTP API is preserved byte-for-byte where deterministic. WebSocket clients speak raw JSON at /_ws/:room; the /socket.io/* shim remains for external embeds.