Fabric
You're on the list! We'll be in touch when we launch.
Please enter a valid email address.
Something went wrong. Please try again.

Editing documents

Markdown files open straight into a live editor in the web file browser. It is a rich text surface: headings, lists, tables, and code render as you type, and everyone with the file open edits the same document at the same time. Behind the scenes every edit is recorded to the operation log through the same auto-commit path the CLI uses, and the file on trunk is always plain, portable markdown. Nothing about the rich editor leaks into the stored file.

Editing requires write access to the repo. Read-only viewers get the same live view (including collaborators’ cursors) without the editing affordances.

Formatting toolbar

Select any text and a small toolbar floats above the selection:

  • Bold, italic, strikethrough, and inline code
  • Link: opens an inline field for the URL (or press Cmd/Ctrl+K)
  • Text, H1, H2, H3: switch the current block between paragraph and heading levels
  • Comment: start a comment thread anchored to the selected text

The active buttons highlight to show the formatting already applied to the selection.

Markdown shortcuts

The editor understands markdown as you type. At the start of a line:

TypeGet
# + space (up to ######)Heading 1 through 6
- + spaceBullet list
1. + spaceNumbered list
[] + spaceChecklist item
> + spaceQuote
```Code block
---Divider

Inline, the usual keyboard shortcuts work: Cmd/Ctrl+B for bold, Cmd/Ctrl+I for italic, Cmd/Ctrl+Shift+S for strikethrough, and Cmd/Ctrl+K to link the selection.

Checklist items render with a real checkbox. Clicking one toggles it for everyone, and the state round-trips as standard - [ ] / - [x] markdown.

Slash menu

Type / on a line to open the insert menu: headings, bullet and numbered lists, checklist, quote, code block, table, and divider. Keep typing to filter (/tab narrows to Table), move with the arrow keys, and press Enter to insert. Escape closes the menu and leaves what you typed.

Tables are real GFM pipe tables. Tab and Shift+Tab move between cells, and the saved file contains the plain | a | b | markdown, alignment included.

Moving blocks

Hover over any block and a grip appears in the left margin. Drag it to move the whole block (a paragraph, list, table, or code block) somewhere else in the document. The move lands as a single edit, so concurrent editors never see the block duplicated.

Comments on a selection

Select text and click Comment in the toolbar to open the composer. The comment anchors to that exact span and the anchor follows the text as the document changes, including through other people’s concurrent edits. Anchored spans show a highlight in the editor; when the underlying text is deleted the comment is kept and flagged as outdated, still quoting what it referred to.

Threads, replies, reactions, @-mentions, and resolve work the same as comments everywhere else in Fabric.

What gets stored

The editor never invents a private format. Saving projects the document to markdown and records it as ordinary edit operations, so:

  • fabric clone gives you the same markdown you would have written by hand
  • diffs and history read cleanly in any tool
  • a file edited over the CLI and the web editor round-trips without churn

If the editor bundle fails to load (or JavaScript is off), the page falls back to a plain textarea editor with a live preview; autosave works the same way there.