← All postsCompany

Why we’re building a local-first office suite

Why Ettex is built local-first: the document lives on your machine and syncing is an addition rather than a precondition. What that buys, and what it genuinely costs.

CompanyW

Most office suites are a server with an editor attached: the document lives in somebody else's datacentre and your browser is a window onto it. Local-first inverts that. The document lives on your machine, in local storage the browser gives us, and synchronisation is something added on top rather than the thing that makes the product work at all. That one decision shapes almost everything else.

What local-first actually buys

  • Latency that does not depend on a round trip. Typing is local, so it stays immediate regardless of the connection.
  • Work that continues when the network does not — the failure mode is a delayed sync rather than a blank page.
  • A copy of your own data that exists whether or not we do.
  • A smaller blast radius for outages: a sync service being down is an inconvenience, not a stoppage.

And what it costs

Honesty matters more than the pitch here. Local-first makes collaboration harder, not easier: merging concurrent edits is a genuine engineering problem rather than a consequence of everyone talking to one server. It makes storage limits real, because browsers quota local storage. And it splits the product into modes — in the browser demo, saving to disk and exporting are limited, while the full local behaviour belongs to the installed app, where the operating system actually gives us files. Pretending otherwise would be the easier blog post and the worse one.

Local-first is not the same as offline-only, and it is not a privacy claim by itself. It describes where the authoritative copy lives and what happens when the network goes away — nothing more. Treat any vendor using it as a synonym for private with suspicion, including us.

What it means for how you work

  1. Expect the editor to stay responsive while a sync indicator catches up — that order is deliberate.
  2. Install the app where you want the full local behaviour, including files on disk.
  3. Keep your own exports anyway, on a schedule. An architecture that favours portability is not a substitute for having a copy.
  4. Treat collaboration as an addition: when several people need the same file at once, say so, rather than assuming simultaneous editing is free.

Ettex is built this way across the suite rather than in one product, which is the part that takes the time. Documents, sheets, slides and records all keep their data locally and sync on top, and the trade-offs above apply to all of them equally — including the ones we would rather not advertise.

Frequently asked

Does local-first mean my data never leaves my machine?

No. It means the authoritative copy is local and the app works without the network. If you enable sync, data moves — local-first describes architecture, not confidentiality.

What happens to my documents if the service stops?

The local copy stays where it is, and exports from the installed app are the route to taking it elsewhere. That is the main practical argument for the approach.

Is the browser version the same as the installed app?

Not quite. The browser runs as a demo with saving to disk and exporting limited; the installed app provides the full local behaviour because the operating system gives it real file access.

DK
Written by Daria K.

Part of the Ettex team — writing about product, engineering and the future of work.

More posts
Get the best of the Ettex blogProduct news, guides and tips — straight to your inbox, no spam.