No one sits between you and your data.

Mail, calendar, files, documents, spreadsheets, presentations, photos, notes and AI chat — running on hardware you own, or a cloud account you pay for directly. No subscription that locks you out of your own files when it lapses. No service that can be shut down. No terms that change on a Tuesday.

Free for personal use. No account. Nothing to cancel.

OUI Editor OUI Office OUI Files OUI Mail OUI Code OUI Notes OUI Chat OUI Calendar OUI Contacts OUI Photos

Shipping · coming

welcome.md WYSIWYG · Source

The editor below is the real OUI Editor, not a screenshot. It runs entirely in this tab against your browser's own storage.

≈ 2.2 MB · nothing you type leaves this machine

↓ Check for yourself — the request log is at the bottom of every page.

Measured over 58 real documents · not a projection

Every dollar you spend feeding documents to an AI becomes 8 cents.

A language model never sees your document. It sees your document wrapped in every style definition, revision marker and XML envelope the file format drags along — and you pay for all of it, on every single request. Convert to GFM+ first and the wrapper is gone; the content, the tables, the headings and the footnotes are not.

The average document, sent as .docx
0 tokens
The same document, as GFM+
0 tokens

Same content. Same structure. Converts back to .docx when you're done — 59/59 documents round-tripped with zero semantic differences.

Documents on the dollar Decks 18¢ Spreadsheets 22¢ — and the floor is reported as loudly as the ceiling
OUI Editor with a Markdown file, an Excel workbook and a PowerPoint deck open as tabs in one window
Look at the tab row: a .md, a real .xlsx, a real .pptx — open side by side in one editor, all GFM+ underneath. This is a screenshot of the actual app.

See the full measurement — including where it goes against us →

The suite

Stop renting your office software.

Ten apps that share a format, a storage layer and a component library — which is why they feel like one product instead of a bundle. Everything below is a screenshot of the real thing, and the editor is running live further up this page.

OUI Editor showing a rich working document with ribbon, styles and outline
OUI Editor — a full word processor, and one switch away from raw Markdown. It was a text file the whole time.
OUI Mail inbox with threaded list and reading pane
OUI Mail — a fast, threaded inbox over JMAP, on a server you chose. Replying puts you in the same editor as your documents.
A real Excel workbook open as a live spreadsheet grid
Spreadsheets — a real .xlsx, recalculated and editable in a live grid, in your browser, from your disk.

Status is on every card and every app page carries a dated list of what it does not do yet. We would rather you found out here than three weeks in.

Since you opened this page 0 requests that reported anything about you
third-party requests0
analytics beacons0
cookies set0
page assets, all from this origin0

Every other page you visited today is measuring you.

This one can't — there is nothing here to do it with. No analytics SDK, no tag manager, no font CDN, no cookie banner, because there are no cookies to consent to.

The bottom row is deliberately not zero. This page loaded some HTML, some CSS and four small scripts, and pretending otherwise would be the exact dishonesty the counter exists to refute. What is zero is everything above it: nothing here contacted a third party, set a cookie, or sent a byte about you anywhere.

The numbers come from your browser's own PerformanceObserver, not from us — and they include any request the live editor makes when you load it. Open your network tab if you would rather not take our word for it. That is the entire point of putting this here.

The numbers behind the pitch

Measured, not asserted.

Three axes — token cost, structure retention, round-trip fidelity — over two corpora, one of them built by people trying to break a parser. Including the results that go against us, because a benchmark that only reports its wins is an advertisement.

12.7×

fewer tokens than the .docx it came from

0.0%

of document structure survives plain-text extraction

59/59

documents round-tripped with zero semantic differences

A pipeline has three options, and only three.

Put the OOXML in the context window — structure-complete, and enormous. Extract the text — cheap, one-way, and it discards every table, heading, footnote and merge, which is usually what the question was about. Or convert. Here is what each one costs:

Corpus As OOXML As GFM+ Ratio
Documents58 files 1,092,496 86,228 12.7×
Presentations28 decks 3,423,895 632,629 5.4×
Spreadsheets15,870 workbooks 4,819,304,989 1,069,300,640 4.5×

Range across a representative corpus and an adversarial one: 3.7× – 16.6× — across a representative corpus and an adversarial one built by people trying to break a different implementation.

Cheap is not the same as free.

Text extraction is cheaper than GFM+. If tokens were the whole argument, extraction wins. So it is worth being exact about what it keeps:

What the document had Kept by text extraction Kept by GFM+
Tables161 in source 0.0% 100.0%
Table rows491 in source 0.0% 100.0%
Table cells1,437 in source 0.0% 99.2%
Headings78 in source 0.0% 92.3%
Footnotes6 in source 0.0% 100.0%
List items629 in source 0.0% 97.8%

Not "little." None. A plain-text extraction preserves 0.0% of every structural construct, whichever extractor you use, because none of them carries a grid, a heading level or a footnote binding. Its token advantage is not a saving — it is the price of the answer.

The heading figure has two readings and you should have both. 92.3% is the converter's heading rate against headings the document declares. Counting headings by eye in the same corpus gives 58.5%, because 45 of them are formatted like headings and tagged as nothing — a gap no representation can close.

And it converts back. That is the part nothing else does.

Anyone can produce a smaller representation of a document. One that converts back — into the file the world actually wants to receive, with styles as styles, comments as comments and tracked changes as revisions — is infrastructure rather than a preprocessing trick.

Axis Representative corpus Adversarial corpus
FidelitySomeone else's .docx → GFM+ → .docx, compared semantically 59 / 59 28 / 28 readable
StabilityOur GFM+ → .docx → GFM+, compared byte for byte 59 / 59 38 / 38
The adversarial set holds 38 files; 10 of them cannot be opened by anything and are correctly refused. Fidelity is best-effort by ruling — Word does not write the XML we write, so byte-identity against someone else's file is not a meaningful target. Stability is our own output, where byte-identity is the right target and a shortfall is a hard gate failure.
Where these numbers come from, and where they are weakest

Every figure on this page is reproducible from the benchmark harness. We publish the corpora, the licences, the tokenizer and the failures — including the four places the current report corrects its own predecessor, one of which narrowed our own advantage.

docx
58 files — US government forms (17 USC 105), MIT/Apache/BSD test suites from other projects, and synthetic single-construct fixtures. Each recorded with source URL, licence, retrieval date and sha256.
xlsx
15,870 of 15,871 public Enron workbooks. The one exclusion is named in the report: 353 million characters of XML that the tokenizer cannot count.
pptx
28 of our own decks.
tokenizer
gpt-tokenizer, cl100k/o200k family.
report
gfmplus-benchmark-report-v0.0.11-LnxAby, measured 2026-08-11

Two things this does not establish, stated here rather than discovered later: models do not demonstrably reason better over GFM+ — on questions where both formats contain the answer the difference is a coin flip. The advantage is that GFM+ still has the fact when extraction has thrown it away. And on decks GFM+ currently answers worse on "which slide contains X", because the deck body does not number its slides. That is a real defect with a known cause and a known fix.

The full measurement, with the methodology and the corrections →

Models

Bring your own key. Or no key at all.

OUI Chat runs local models in the browser through WebLLM, and connects to any remote provider with a key you paste in and we never see. Your documents, mail and files are available as context without leaving your infrastructure — the request goes from your browser straight to the provider, because there is no "us" in the path.

AnthropicGoogleLM StudioMeta MistralOllamaOpenAI

Alphabetical. No hierarchy, no default, no revenue share.

Where it runs

Your hardware, your cloud account, or both.

Your hardware — Undercast

A single binary you install on a machine you own. No runtime to install first, no platform account, no other services to stand up alongside it. It mounts as an ordinary drive in Finder, Explorer, Nautilus and Dolphin, because underneath it is WebDAV and JMAP.

Your cloud — Cloudflare

The same protocols against R2 and Workers in an account you hold and bill directly. Your data sits with a provider you chose and can leave. The apps do not know or care which backend they are talking to.

Both, and switch whenever →

Software you run, on infrastructure you control.

That's the whole idea. Everything else is implementation.