Home About Me

The Archive You Actually Own

This is the first in a short series called Daily Grumbles—closer to complaints than to flashes of insight, and perhaps even more fleeting than a passing thought.

It is dedicated to my personal archive.

Screenshot of the archive

A year or two ago, after watching articles and sites I liked disappear from the internet, I decided to build one myself. The logic is hard to argue with: however much data is online, it belongs to someone else. Only what sits on a local disk—or better, an offline drive—is actually yours.

A bookmark is not a copy. It points at someone else's server, and when the page is removed, the bookmark becomes a dead end. I treat the archive as a separate habit from browsing: if something matters, save it, keep it local, and if possible keep it on a drive that does not depend on a live connection.

The setup is not complicated. For video, I use yt-dlp. For web pages, I use the Chrome extension SingleFile. It handles page snapshots reasonably well and can automatically upload captures to a WebDAV server, which makes the whole thing close to one-click.

Saving web pages, though, has always been a stubborn problem. Early static pages were easy: Ctrl+S, or the browser option to allow offline use, because the page was essentially a single static document. Then came streaming media—often not direct video links but segmented playback with authentication—and Java applets embedded in pages. Offline saving began to struggle. Later, front-end rendering became common, and tools such as AJAX made it possible to request and update data in real time. Traditional page saving more or less stopped working. The old design assumed the interfaces would remain available, but if the source site disappears, the saving function disappears with it.

That is why most current page-saving tools aim for 'what you see is what you get': they capture everything displayed on the page and handle JavaScript and similar content separately. The details are too much to cover here, so I will skip them.

That is enough for a first post, I think.