Documents were the test of whether PolarHQ could be a real suite or just a nice photo app. The answer had to be Google-parity editors — and they had to round-trip Microsoft and Google files, all while staying end-to-end encrypted.
Full-screen, by design
Sheets, Docs, and Slides each open in their own full-screen tab — no suite sidebar, no chrome stealing space. Each has a proper menu bar, a toolbar, and (for Sheets) a formula bar. They feel like applications, not widgets embedded in a dashboard.
A document is just a Drive file with a special type, so creating one from Drive or from the app puts it in the same encrypted tree as everything else. Open it and you're in the editor; everyone else keeps seeing a normal file.
A spreadsheet that doesn't flinch
The first version of Sheets used a hand-rolled grid, and it fought us on everything — header bleed, resize, dropdowns, text selection on drag. So we rebuilt the grid on Glide Data Grid, a canvas renderer, and restyled it to match.
The payoff:
- Smooth scrolling over large sheets, with 1,000 rows by default and a button to add more.
- Real column/row resize, right-click menus, and copy/paste.
- A fill handle that tiles correctly.
- Formulas powered by HyperFormula, with proper undo/redo.
Yjs doc ──▶ HyperFormula engine ──▶ Glide canvas grid
▲ (calc) (render)
└── encrypted snapshot in Drive
It speaks Office
You can import .xlsx, .docx, and .pptx and export back to them. We lazy-load the heavy libraries — SheetJS for spreadsheets, Mammoth for Word, a pptx pipeline for slides — so the editors stay light until you actually need interop. Got an .xls sitting in your Drive? Open it straight from the file browser; the right editor launches and the right icon shows on the node.
Collaboration, encrypted
Editing is built on Yjs CRDTs over a relay. The crucial design decision: the relay only ever forwards opaque, encrypted update blobs. Clients merge plaintext locally; the server brokers ciphertext. That means real-time collaboration and end-to-end encryption coexist — the relay is a dumb pipe that couldn't read your document if it tried.
Most collaborative editors trade away privacy for presence. We kept both by making the server a courier, not a reader.
Where it's headed
Comments, presence cursors, and shared public views are next. But the foundation is here: a self-hosted office suite that imports your existing files, edits them at Google parity, and never lets the server read a word.