About LinkRing
Hi, I'm Keith, and I made this! I love the internet. Not the algorithmic feeds and engagement metrics version (although I spend a lot of time there), but the real internet. The one made of personal websites, weird blogs, hand-curated link collections, and communities built around shared curiosity rather than being mad online all the time.
Links are the original social feature. Before likes, before shares, before retweets ... there were links. Someone found something interesting and said "hey, check this out." That simple act of pointing to something you love and sharing it with others is still the most human thing we do online.
How is this different from every other link list or tree site? Your link lists and webrings aren't stored on our servers. They live on your Personal Data Server (PDS) as part of the ATProto network. That's the same decentralized protocol that powers Bluesky. This means:
You own your data. Not "you own it but we keep it in a database and sell ads against it", you actually, literally own it. It's on your PDS, which you can self-host if you want. If LinkRing disappeared tomorrow, your links would still be there, easily findable in a tool like PDSLS.dev.
Your links are portable. Any app that speaks ATProto can read your link collections. No lock-in, no export buttons, it's just there. You can ignore the embed widgets and write your own code to fetch your links. You can write your own tool to add links to your PDS. It's your data!
It's open. The link list format is a published lexicon. Anyone can build tools that work with it. I don't really expect anyone to, but you can!
Webrings — remember those? Circular collections of websites linked together, each pointing to the next. They were how I discovered new corners of the internet before search engines got good (and then got bad). My personal site was in like 20 of them. They've gotta come back, because discovery through human curation beats discovery through algorithms.
What LinkRing stores (not much)
I keep saying your data lives on your PDS, not here. But we do have a database, so here's exactly what's in it:
- OAuth sessions — When you log in, we store a session token so you stay logged in. Log out and it's gone.
- A cache of public lists — For the Explore page, we cache public lists so we're not hammering everyone's PDS constantly. This is just a copy; delete yours from your PDS and it disappears from here too.
- Link preview metadata — When we fetch a link's title, description, and image for display, we cache that so pages load faster.
- Jetstream cursor — A bookmark for where we are in the ATProto firehose. Literally one number.
That's it. None of this is required to access your links. If this site vanished, you could still read your link lists directly from your PDS, build your own viewer, or use whatever other tools people build. The database is just for convenience and performance. Here's the code to do it yourself.
This is a small project built with love. If you find a bug, have a suggestion, or just want to say hi, I'd love to hear from you.
Now go make some links for me to collect 🖇️!