✍️ Marginer

Highlight any page.
Paste the notes anywhere.

Select text on any web page, add a note or a reaction, and walk away with markdown you can paste into a comment, a pull request, an email. On Substack, the comment is the shared annotation: anyone with Marginer sees it on the page, and replies in place.

✍️ Marginer ← drag to your bookmarks bar, then click it on any page
An article with three passages highlighted; beside each, a card with a note and a reaction
Notes float beside the text they're about. Reactions sit in the margin.

How it works

1

Select, note, react

The note panel opens on the selection. Type a note, tap a reaction, or type an emoji at the front — same thing.

2

Copy markdown

Your notes are one markdown document: > quote lines with the reply beneath each. Paste it into the post's comment box.

3

Read it in place

Anyone with Marginer on that page sees the comment's quotes highlighted, with the notes beside them — and can reply to each, in the comments.

The markdown is the storage format. There's no database and no account; a page's notes are one string, and that string is what gets saved, what re-anchors on the next visit, and what lands on your clipboard:

> the only honest reading anyone ever gives a text

🔥 Overstated, but I like it. Compare Coleridge on Kant.


> Markdown travels

👍

✍️ marginer.app — see these highlights on the page

The comments are the annotations

No server of ours is in the loop. The post's own comments are read (on Substack, through the same JSON the page itself loads), and every comment whose quotes are found in the article becomes a thread you can show on the page. The site keeps the comments; its identity, moderation and notifications apply. A hand-typed > quote reply counts just the same.

A reader's thread shown beside the article: a passage with three entries — Maria, Tom's reply, Maria's reply — each with a Reply button
Pick a reader's thread; replies nest under the passage they argue about. Reply on an entry and the reply is drafted for that comment — you press Post.

Replies are written the way email has always quoted: the passage nested under the words being answered.

> > the only honest reading anyone ever gives a text
> Overstated, but I like it.

I don't think it's overstated — that narrower thing is exactly what he meant.

The sidebar is the document

The sidebar showing the markdown document as editable text, quote lines tinted, with the caret's quote brighter on the page
Select on the page and the quote lands in the pane; type the reply beneath it. Edit the text and the page re-anchors as you type.

Install

Three ways to run the same tool. Notes never leave your browser.

Zero install

Bookmarklet

Drag the button to your bookmarks bar; click it on any page. The whole tool rides inside the bookmark, so nothing is fetched and nothing is installed.

✍️ Marginer Sites with a strict Content-Security-Policy refuse bookmarklets. Substack doesn't; GitHub does.
Always on

Userscript

With Tampermonkey or Violentmonkey, revisiting an annotated page brings your highlights back on its own, with a pill showing the count. ⌘⇧U opens it anywhere.

Install the userscript
Chrome

Extension

Survives any CSP. Not on the Web Store yet — load it unpacked:

  1. git clone https://github.com/huttj/marginer
  2. npm install && npm run build
  3. chrome://extensions → Developer mode → Load unpacked → extension/
Source on GitHub
BookmarkletUserscriptExtension
Installdrag a linkTampermonkeyload unpacked
Shows a page has noteson clickyeson click
Works on strict-CSP sitesnoyesyes
Notes stored insite localStoragesite localStoragechrome.storage

Questions

Where do my notes go?

Nowhere. They're stored in your browser, keyed by the page's URL, as the same markdown you can copy. Marginer has no server and no accounts. The only thing that leaves your browser is what you paste into a comment yourself.

Why a comment, and not a share button?

Because the comment box already exists, the author already reads it, and everyone can read the notes as plain text whether or not they have the tool. Marginer only adds the in-place view. That also means the site's own rules apply: identity, moderation, notifications.

Does it work on sites other than Substack?

Highlighting and notes work on any page. Reading other people's comments in place needs an adapter for the site's comment system; Substack has one. Others are welcome — see the repo.

What happens if the page changes?

A note whose quoted text can no longer be found isn't thrown away: it's marked as unanchored, still shows in your document, and still exports.

Is it Hypothesis?

No. Hypothesis keeps annotations on its server, behind its accounts, invisible without the tool. Marginer's shared annotations are ordinary comments on the site, readable by anyone; the tool is just a better way to read and write them.