Self-Hosted Web Archiving & Page Capture
ArchiveBox, SingleFile, gallery-dl, ChangeDetection.io — keep a permanent copy of pages that vanish.
The web rots. Articles get paywalled, repos get deleted, tweets get retconned. This category is for capturing pages on your own hardware so future-you can still read them. For bookmark / read-later managers see Self-Hosted Bookmarks & RSS; for personal media servers see Self-Hosted Photos & Media.
Full archive servers
- ★ ArchiveBox — the default. Takes URLs (or RSS / Pocket / Pinboard / browser exports) and saves WARC + screenshot + PDF + readability HTML + media + git source — multiple formats per URL. Mature; web UI; CLI.
- ★ Karakeep (formerly Hoarder) — primarily a bookmark manager but archives full pages with screenshots and runs OCR + AI tagging. Great if you want one tool for "save link + archive + read later." See also Self-Hosted Bookmarks & RSS.
- LinkAce — bookmark manager with Wayback-Machine-link-on-save; lightweight archive.
- Linkwarden — bookmarks + page archive (PDF + screenshot + readable); Karakeep alternative.
Single-page capture (one URL → one file)
- ★ SingleFile — browser extension + CLI; saves a complete page (CSS, images, fonts) into a single self-contained
.htmlfile. The cleanest "freeze this page" output. - SingleFileZ — same author; ZIP-format alternative, smaller files.
- monolith — Rust CLI, "save complete web pages as a single HTML file." Pairs well with cron / scripts.
wget --mirror/httrack— old-school site mirroring; still useful for whole-site captures.curl-impersonate— for sites that block plain curl; impersonates real browser TLS fingerprints.
WARC-format archiving
- ★
wget --warc-file=...— produces standard WARC archives readable by Wayback / OpenWayback / pywb. - Browsertrix Crawler (Webrecorder) — Playwright-based crawler that produces WARC; handles JS-heavy modern sites; captures network responses faithfully.
- Browsertrix Cloud — multi-user crawl-management UI on top.
- ReplayWeb.page — view WARC files in a browser; serves your archive without a server.
- pywb (Python Wayback) — host your WARCs as a private Wayback Machine.
Page change monitoring
- ★ changedetection.io — watches URLs for changes; CSS / xpath / JSON filters; notifications via Apprise; great for "alert me when this product is back in stock" or "alert me when this docs page changes." The default in 2026.
- urlwatch — CLI; YAML config; venerable.
- diff2html-cli + cron + git — DIY pattern: clone the page text, commit changes, get a diff in git history.
- Distill.io / Visualping — closed-source SaaS; widely used.
Media downloaders (bulk capture)
- ★ gallery-dl — image / gallery downloader for hundreds of sites (Twitter, Reddit, Instagram, DeviantArt, etc.). The "save my likes" tool.
- ★ yt-dlp — video downloader; backbone of many self-hosted archives.
- MeTube / Pinchflat — web UIs around yt-dlp for "subscribe to a channel, mirror new videos."
- TubeArchivist — full YouTube archive with metadata + thumbnails; Plex / Jellyfin-friendly.
- wallabag for read-later text articles — see bookmarks page.
Wayback Machine integration
waybackpack/wayback-machine-downloader— pull a domain's history from the Internet Archive's Wayback for local storage.- Save Page Now API — push your URLs to the public Wayback Machine; many bookmark tools call this on save.
Patterns to adopt
- ★ Auto-archive on bookmark. Karakeep, ArchiveBox, and Linkwarden all support "every saved URL is also archived."
- Submit to public Wayback too — redundancy via Internet Archive on save.
- Object storage for archives — WARCs and screenshots are large. Back archive volumes to S3 / R2 with restic.
- Don't archive logged-in pages by default — cookies might leak. Configure profile capture deliberately.
- Cron RSS-to-archive — pipe a curated RSS feed straight into ArchiveBox to mirror everything you read.
- Consider law / ToS — broad mirroring of paywalled or private content has legal limits; archive what you have rights to.
Pick this if…
- Default full archiver, many formats: ArchiveBox.
- Bookmarks + archive in one tool: Karakeep or Linkwarden.
- One-off "save this page": SingleFile (browser) or monolith (CLI).
- JS-heavy modern sites / WARC fidelity: Browsertrix Crawler + ReplayWeb.page.
- Watch a URL for changes: changedetection.io.
- Bulk media (videos / images): yt-dlp + gallery-dl, with MeTube / TubeArchivist as front-ends.
- Private Wayback Machine: pywb on top of WARCs from Browsertrix.