A Document is the page type you reach for when you want to write — notes, specs, briefs, anything prose-shaped. You get a rich-text editor with tables, headings, code blocks, live collaboration, and an @-picker that lets you link to any other page in your workspace as you type.
/.The editor is TipTap under the hood, with a set of extensions wired up for PageSpace — headings, lists, tables, code blocks with Shiki syntax highlighting, the page @mention, and a character counter. None of that shows up as jargon in the UI; you get a toolbar, a bubble on selection, and a slash menu on an empty line.
Every Document stores its content in one of two modes: Rich Text (the editor's HTML) or Markdown. That choice lives on the page itself, not a user setting, and it decides what the editor hands back when you type and what a Markdown export actually converts from. You switch modes from Page Setup. Before the switch, the page is saved, a version snapshot is written, and the content is translated — HTML to Markdown on the way down, Markdown to HTML on the way up. You confirm the direction because the translation isn't lossless.
Saves are optimistic. Every one of them carries the revision number you started from, so when two people edit at once the second save is rejected rather than silently overwriting the first; the editor refetches and you keep typing from the updated state. As you type, changes are held for one second and then sent; pressing Cmd/Ctrl+S, clicking out of the window, or closing the tab all flush whatever's pending. Your co-editors receive the update over the real-time channel and their views catch up without a refresh.
If you don't have edit permission for the page you opened, the editor renders in read-only mode with a banner across the top. Selection still works — you can copy — but every edit path is disabled.
Under the @ picker, results come from a search across the current drive: pages you can see, users who share the drive. Picking a page drops an inline @Title link into the text. The link stays pointed at the page even if you later rename it — the link stores the page's ID, not its title.
AI reads a Document by pulling its current content into the conversation, and edits it by replacing specific lines rather than rewriting the whole file from scratch. Because the Document is just a page, an agent can also @-mention it from somewhere else in the workspace to pull it into context.
Search docs, blog posts, and more.