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.

Share links

Any file you can open in the web file browser is shareable. Every file view offers two copy actions in its header:

  • Copy link copies a live URL. Whoever opens it sees the file as it is now, on the current trunk. Use it for “look at this file” where latest is what matters.
  • Copy permalink copies a URL pinned to the exact version on screen when you copied it. The link’s ref is rewritten to a time-travel coordinate (op:<actor>:<seq>), so the trunk can move on and the link keeps showing the same bytes. Opening a permalink shows the read-only time-travel banner, with a one-click return to the latest version.

Line ranges

In the file viewer, click a line number to select that line. Shift-click another line number to extend the selection to a range. The selection is mirrored into the URL as a query parameter:

…/browse?view=blob&path=src/app.py&L10      # one line
…/browse?view=blob&path=src/app.py&L10-20   # a range

A small bubble appears beside the selection with both copy actions, so you can grab the live link or the permalink for exactly those lines.

Because the range travels as a query parameter (not a #fragment), the server sees it: opening a shared URL renders the range already highlighted and scrolled into view. A range that no longer fits the file (say the file got shorter) degrades to the plain view instead of erroring.

Paragraphs in rendered markdown

Markdown files render as documents, but every rendered block (heading, paragraph, list, quote) knows which source lines it came from. Hover a block and a copy-link affordance appears; clicking it copies a link to that block’s line range, in the same L format.

The highlight follows the Rendered/Source toggle both ways: a link to lines 10-20 highlights those lines in the source view and the matching blocks in the rendered view.

A permalink is just a time-travel URL: the same op:<actor>:<seq> frontier coordinates fabric clone --at accepts. When the state you pinned has several concurrent tips, the link carries all of them, comma-separated, so it reproduces the exact state. Permalinks are read-only by design, like all time-travel views: you can look, but appending happens at the current frontier.