Skrive 1.7.0 — Skrive is now a native app
Skrive 1.7.0 — Skrive is now a native app
For most of its life, Skrive ran on Electron — the framework behind most desktop apps. It worked, but it came with a tax: every Electron app bundles its own full copy of a web browser and a runtime, so a small writing app becomes a 130+ MB download that sits heavy in memory and takes its time to open. We never loved that. Writing software should feel light.
So we rebuilt the foundation. 1.7.0 is the same Skrive you know — the same editor, the same files, the same calm — running on a new native core instead of Electron.
The short version
- The download went from ~132 MB to ~3.4 MB — roughly 39× smaller.
- It's lighter on memory and quicker to open: it uses your operating system's own web engine instead of carrying a second browser inside the app.
- Updates are now tiny and native — a few MB, delivered through each platform's own updater (signed and notarized on macOS).
- Your writing is untouched. The same plain-text files you own, the same editor, nothing to migrate.
Why we rebuilt it
Skrive's whole point is rendered, joyful writing in plain files that are yours — not a heavy IDE, not a cloud silo. The Electron foundation quietly worked against that: shipping an entire Chromium browser per app is the single biggest reason desktop software feels bloated.
The new architecture is the opposite shape: one small core, a thin native shell for each platform, and the operating system's own webview running the exact same interface. No bundled browser. The result is an app that's a few megabytes instead of a few hundred — without changing a single thing about how it feels to write.
Under the hood
For the curious (Skrive is source-available): the new foundation is a small set of deliberately lean, fast pieces.
- A shared core written in Zig, exposed through a plain C interface — the part that reads and writes your files, tracks projects, and watches the disk for changes.
- A thin native shell for each platform, each hosting the OS's own web engine: Swift on macOS (over WebKit), and Zig on Windows (over Microsoft Edge's WebView2). The Windows shell is pure Zig — no second language — sitting on the same Zig core the Mac uses.
- The editor you actually write in — the React and TypeScript app — is the same one that ran under Electron. We replaced only the Electron-specific plumbing beneath it; the bulk of the TypeScript runs and behaves exactly as it always has.
That last point is the whole trick: keep the entire writing experience as-is, and swap only the heavy machinery underneath it.
How we got here
Skrive has worn a few foundations. It started on Tauri, then moved to Electron — and the whole way, two things kept pulling at us: we wanted a small footprint, and we wanted to own as much of the stack as possible, rather than build inside someone else's framework. Neither tool gave us both. Tauri keeps apps small by using the system's webview, but you live inside Tauri's world and its abstractions. Electron hands you a consistent, fully-controlled engine — but bundles an entire browser to do it, and you're still inside Electron's app model.
So this time we built the foundation ourselves. It moved out from under the app in careful steps — the Zig core first, then a native macOS shell, then a native Windows shell — and at every step we held the writing experience byte-for-byte identical to the old build, verified automatically against the original. The payoff is the combination Tauri and Electron each only half-delivered: a few-megabyte footprint and a shell that's entirely Skrive's own code, in the languages we chose, with nothing between us and the operating system.
What this means for what's next
This release is, on purpose, almost invisible: same Skrive, far lighter. But it's the foundation everything after it is built on. A few-megabyte native core opens doors a bundled browser kept shut — a genuine path to Skrive on iPad, and the groundwork for the features we most want to build next, like a real version history and effortless sync across your devices.
And the things that make Skrive Skrive don't change: plain files you own, no AI, no telemetry (crash logs stay on your machine; you send them only if you choose to).
Notes
- macOS: signed and notarized — opens cleanly.
- Windows: not yet code-signed, so Windows SmartScreen may warn on first run. Click More info → Run anyway. The installer is per-user (no admin) and sets up the Edge WebView2 runtime automatically if it's missing.
- Existing Electron users: your current app will show a one-time notice pointing you here. Download once, and you're on the native build with automatic updates from now on.