Highlight the web.
Keep what matters.
Select text on any page and mark it. Highlights come back every time you return, export to Markdown, and can be shared as a read-only page.
Get Marker — it's free How this was builtFree: 10 highlights. Pro: unlimited, colours, export and sharing — 7-day free trial, no card required.
Highlights that stick
Select, click, done. Marker anchors each highlight to the text itself, so it survives reloads and page updates. Everything is stored in your browser.
Colours & Markdown (Pro)
Four colours to sort what you save, and one-click export of a page's highlights as Markdown for your notes.
Share a page (Pro)
Publish the highlights from a page to a private read-only link. Nothing else about your browsing leaves the device.
Install
Marker is a demo built to be read as much as used, so it ships as a zip rather than a store listing.
- Download the latest release zip and unzip it.
- Open
chrome://extensions(oredge://extensions), turn on Developer mode. - Click Load unpacked and pick the unzipped folder.
- Select some text on any page and hit the marker.
Firefox: about:debugging → This Firefox → Load Temporary Add-on → manifest.json.
How this was built
Marker is the open-core demo for PaidExtension: the product code is public, the licensing underneath is the kit, unchanged.
~600 lines of product
The highlighter, popup and share client in extension/src/marker and extension/src/content. Everything else — trial, checkout, activation, seats, offline grace — comes from the kit.
Five feature names
The free/Pro line is one JSON block: free: ["highlight"], pro: [..., "colors", "exportMarkdown", "share"]. Every gate in the UI calls hasFeature(), which reads the verified entitlement, never a stored flag.
One route, checked server-side
POST /share is ~90 lines added to the licensing Worker. It verifies the entitlement token's signature, issuer, expiry and type before it stores anything, so a patched extension can't publish.
$0/month to run
Cloudflare Worker + KV, GitHub Pages, Paddle as merchant of record. Paddle runs in sandbox here: buy Pro with card 4242 4242 4242 4242, then refund it in the dashboard and watch Pro switch off.
Simple pricing
Start free. Upgrade from inside the extension whenever you're ready.
Monthly
$2.99
per month
- All Pro features
- Up to 3 devices
- Cancel anytime
Yearly
$19.99
per year
- All Pro features
- Up to 3 devices
- Two months free
Lifetime
$39
one-time
- All Pro features, forever
- Up to 3 devices
- All future updates
Questions
Is this a real product?
It works, and Pro really is gated by signed licenses — but payments run through Paddle's sandbox, so nothing is charged and shared pages expire after 90 days. Marker exists to show what a paid extension built with PaidExtension looks like from the inside.
How do I upgrade?
Open the extension, go to Settings and choose Upgrade to Pro. Payment is handled by Paddle, our merchant of record; your license key is emailed to you and the extension unlocks automatically.
Does it work offline?
Yes. Highlights are stored locally and your license is verified inside the extension, so everything except sharing works without a connection.
How many devices can I use?
Up to 3 browser profiles per license. You can release a device anytime from the extension's Settings or the device page.
Can I get a refund?
Yes — 14 days, no questions asked. See the refund policy.