Raindrop.io

raindrop.iocontributed by Samuele Ongaro

YES

Replaceable in one session with an AI coding agent.

A bookmark manager with collections, tags, full-text search inside saved pages and permanent copies of anything that later disappears.

Promptfree, for everyone, and the only version there is
Build me a bookmark manager that replaces Raindrop: collections, tags, full-text search inside the pages, and a copy of anything that later disappears.

STACK
- Node 20+ with Fastify, server-rendered HTML
- SQLite through better-sqlite3, WAL mode, with FTS5
- A worker for fetching and archiving
- A browser extension and a bookmarklet
- Caddy in front

THE DATA MODEL
- bookmarks: id, url, canonical_url, url_hash, title, description, site_name, favicon_path, cover_path, collection_id, note_md, is_broken, last_checked_at, created_at, updated_at, deleted_at
- collections: id, parent_id, name, icon, colour, position, is_public, public_token
- tags, bookmark_tags
- archives: id, bookmark_id, kind, path, sha256, bytes, captured_at — the permanent copy
- contents: bookmark_id, text_content, word_count, language — extracted text, which is what makes search inside pages possible
- highlights: id, bookmark_id, text, prefix, suffix, note, colour, created_at
- checks: id, bookmark_id, status_code, error, checked_at — append-only, so 'when did this break' is answerable
- Identity is the canonical URL after redirects are resolved and tracking parameters stripped

ARCHIVING, WHICH IS THE ONLY REAL DEFENCE AGAINST LINK ROT
- On save, fetch the page and keep a permanent copy. This is the feature that justifies the whole tool: a bookmark to a page that no longer exists is a memory of a link
- Three levels, chosen per collection: the extracted article text, a full single-file HTML with the images and stylesheets inlined, and a PDF or a screenshot
- Inline every asset into one file. A copy that still fetches images from the original site is a copy that rots at the same speed
- Store the capture date and the hash. A page changed since capture is worth knowing about
- Re-archive on demand, keeping the previous capture — a page that changed is sometimes exactly what you needed to prove
- Fetch politely: an identifiable user agent, a timeout, a size cap, no redirects to private addresses, and rate limits per host
- If a page is behind a paywall or a login, say so honestly. Do not build circumvention

SAVING
- A browser extension: one click saves the current page with its title, description and cover image, and lets you pick a collection and tags without leaving the page
- A bookmarklet for browsers without the extension, a share target on mobile, and an email address that accepts a forwarded link
- Duplicate detection on the canonical URL, offering the existing bookmark rather than creating a second
- Bulk import from a browser's HTML export and from the common services, preserving folders and dates

SEARCH, WHICH IS THE OTHER HALF
- FTS5 over titles, descriptions, notes, tags and the extracted page text. Searching only titles is what makes most bookmark managers useless after a year
- Filters that compose: collection, tag, type, domain, date range, broken, has highlight
- The matching text shown in the result
- Saved searches as smart collections that stay live
- Search must be instant. This is the main interaction and everything else is secondary

ORGANISING
- Nested collections, and tags that cut across them. Both, because people use both
- Drag to move, bulk edit by selection
- A note per bookmark, in Markdown
- Highlights on the archived copy, anchored by text with a prefix and suffix so they survive a re-archive
- Types detected — article, video, image, document, audio — and shown in filters

BROKEN LINKS
- A scheduled check of every bookmark, spread out and polite, recording the status
- Broken ones listed with a link to the archived copy and to the Internet Archive as a second option
- The check never deletes anything. A page that 404s today may be back tomorrow, and the archive is why it does not matter either way

SHARING
- A collection published at a token URL, read-only, optionally with a password
- An RSS feed of a collection, which turns a reading list into something people can follow
- Nothing shared exposes anything but what was shared

ESCAPE
- Export everything — bookmarks, notes, highlights, collections and tags — as JSON and as a browser-importable HTML file, in one command
- Export the archives as a directory of files
- A bookmark library is years of accumulated judgement and must never be trapped

OPERATIONS
- .env: DATABASE_PATH, STORAGE_PATH, BASE_URL, SESSION_SECRET, USER_AGENT_URL, HASH_SALT
- Migrations on boot, each once
- Archives are the bulk of the storage: measure the average early, set a per-collection policy, and watch the disk
- Nightly backup off the machine, restore script
- Health endpoint reporting archive queue depth and the broken-link count

WHAT MATTERS MOST
Archiving and full-text search. Build single-file capture and the text index before anything is pretty, then save two hundred real pages and search for something you only half remember. Those two together are the entire difference between this and a folder of browser bookmarks.

Give me the repository, the extension, the bookmarklet, the archiver, migrations, .env.example, and a README with deploy steps behind Caddy.

What you lose

  • Permanent archived copies, which is the only defence against a link rotting
  • Full-text search inside the pages you saved, not just their titles
  • Browser extensions and apps on every platform

If you would rather not build

  • A Markdown file, which many people never outgrow

What it costs

as published on their pricing page

PlanBilled monthlyBilled yearlyLast read
—$3/mo——

Their pricing page is where these came from. Seeing a different price? Tell us.

The escape hatch

open source · no votes, no paid placement

Linkding

$0

A fast self-hosted bookmark manager with tags and a bookmarklet.

sissbruecker/linkdingfree · open source

Wallabag

$0

Saves a readable copy of every article, so a dead link still opens.

wallabag/wallabagfree · open source

Why this verdict

our own opinion · changed only by a person

87/100

Verdict yes at 87. Archiving the text at save time is what separates a bookmark manager from a list of URLs, and Readability does the hard part.

History

tracked since 10 Aug 2026 · nothing is ever overwritten

Interest · last 30 dayspeak 2/day
views01230 Aug4 Sept9 Sept14 Sept19 Sept24 Sept28 Sept
— views— prompt copies none yet— votes none yet

Questions about Raindrop.io

answered from the record above

Is Raindrop.io free?

No — the plan we track is $3 a month. Pro at around $3/month billed annually; a free tier covers basic bookmarking.

Can you replace Raindrop.io by building your own?

YES. Replaceable in one session with an AI coding agent. Replacement score 87 out of 100, build time one session. Read what you lose before you decide.

How much does Raindrop.io cost?

$3 a month on Pro — $36 a year. Recorded 10 Aug 2026.

What do you lose by replacing Raindrop.io?

Permanent archived copies, which is the only defence against a link rotting; Full-text search inside the pages you saved, not just their titles; Browser extensions and apps on every platform. If any of those carry weight for you, keep paying.

Is there an open-source alternative to Raindrop.io?

Yes: Linkding, Wallabag. The prompt on this page is for when you want it your way instead.

Related entries

same category first, most replaced first

All 40 in Notes, docs & writing

Not sending yet

Every week, something stops being worth paying for.

New verdicts, prices that moved, entries added. One email a week. Unsubscribe in one click. Nothing is being sent yet — your address is kept here, and the first issue is the first thing it is used for.

free forever · no tracking pixel · stored here, never passed to anyone

Esc