Work/§01 / 08 Tool · 2026

subScribe

A writing suite you own. No account, no ads, and nothing sitting on a third-party cloud.

subScribe's manuscript editor beside a live typeset preview of the first page of Flesh is the Shore
Writing my novel in the manuscript editor, with the typeset paperback page beside it.

Every App Wants an Account

I write, and so do the people I write with. A writing group ends up using one app for drafts, another for sharing, a third for feedback, and a chat service full of ads for the sessions themselves. Every one of them wants an account, and most of them want your data.

A Suite You Own

subScribe is a writing suite you own. Everything that needs no one else works with no server and no account: documents, books, PDFs, boards, and notes live on the device, with folders, search, history, and a trash.

  • Documents. A Word-style editor with styles, tables, footnotes, a table of contents, headers, and page setup, plus formats for manuscripts, screenplays, stage plays, and poetry. Suggesting mode tracks changes, and every document keeps its version history.
  • Word and PDF, in and out. Word files open and save with their styles, notes, and tracked changes. PDF export is typeset by the app’s own layout engine, and a PDF can be imported back into a document.
  • Books. A manuscript becomes a typeset paperback interior, an EPUB, and a submission manuscript. The cover editor lays out the front, spine, and back to the printer’s measurements.
  • PDF editor. Reorder, mark up, fill, sign, and edit a PDF as the PDF it is.
  • Check. An editing pass that finds inconsistencies, holds the text to a house style, and reports on repeats, sentence length, dialogue, and pace. Nothing leaves the device.
  • Canvas and notes. Shared storyboards, and an Obsidian-compatible Markdown vault with wiki-links and backlinks.
subScribe's cover designer laying out the front, spine and back of Flesh is the Shore
The cover designer, sized from the page count: 5 × 8 in, 84 pages, and a 0.189 in spine.
The Check panel's pace report, showing quick, steady and slow-leaning stretches across the book
Check: a pace report for the whole book.
A Check finding that flags face-to-face written two different ways, with both places listed
Check: one phrase, written two ways.
The book design panel with body font, size, line spacing, and chapter heading settings
Book design: the interior's type, spacing, and chapter headings.

With a server one of you hosts, a group can write together live, run timed writing sessions where everyone’s work is revealed when the prompt ends, and talk in channels, DMs, and peer-to-peer voice and video.

How It Works

The client is React and TypeScript, in one codebase for the Tauri 2 apps and the browser build. The apps’ core and the server are Rust. The server is a single binary on SQLite that also serves the browser client, and the desktop app can host one itself with a single click. The PDF engine is a separate Rust workspace compiled to WebAssembly.

Illustration of subScribe's first connection to a self-hosted server, in four steps from pinning to peer-to-peer media
Illustration. What happens the first time a client meets a self-hosted server.

Clients pin a self-hosted server on first connect. Connections use TLS 1.3 with hybrid X25519 and ML-KEM-768 key exchange, and the server carries an ML-DSA-65 identity key whose signature binds its TLS certificate—so a changed identity is a loud warning, not a quiet one. Voice and video run peer to peer over WebRTC, so media never touches the server.

Every feature is an app on an internal platform layer, with a dock, UI slots, and a command palette. Third-party plugins use the exact same extension points, with permissions granted per plugin.

Third-party plugins use the exact same extension points as the built-in features.

Status

subScribe is open source, under the MIT license. Windows and Linux installers are on GitHub Releases. On a Mac it builds locally from a script that checks for and installs what it needs.

Next project → Haiku, Inc. The company that turns cybersecurity training into a video game—where I went from developer lead to co-founder.