An IPFS Webring

2020-07-01 · ← 🏠 · english · web · ipfs

Webrings were, traditionally, a great way of grouping a community of related websites together― they were particularly useful when search engines weren’t so ubiquitous or powerful.

Picture of a rendered webring titled 'Tetrinet Webring'.
Picture of tetrinet.us's web-ring.

One of the biggest problems with IPFS is a lack of community, and a difficult time finding active blogs and websites on the network. Search engines can’t help us yet. There are valiant efforts to make IPFS web-crawlers, but they aren’t really viable for everyday usage yet.

Webrings might be a bit pasé, a tad bit retro, but…

IPFS is the perfect platform for a webring to thrive, and a webring could really help its ecosystem.

And so, this message founds a fully decentralized and autonomous IPFS webring!

Why should I join?

Now, there are some clear benefits for joining the webring:

How can I join?

Traditionally, webrings are managed centrally on some server, via some HTML widget or a link to somewhere on an HTTP server, so webrings were dynamic; doing something like that would clearly defeat the purpose of being distributed.

Every site in the webring will have a little footer or indicator somewhere, that says “IPFS Webring”, with a “previous” and a “next” button on them.

However, this webring is more linear than most― it’s more of a webchain― there is to be a clear beginning and end.

If you want to join the webring, find the leftmost (most previous) or rightmost (most next) website: this site will have a dead link as previous or right. At your “IPFS webring” footer, add their site to your webring accordingly, and them e-mail (or otherwise contact them) to tell them you’ve done this, so they can update their site. And then, you wait for someone to contact you, so that you can fill in your dead link. :)

If you’re not comfortable putting your e-mail out publically on your website, you can add an obscured comment in the webring footer’s HTML, stating your email or other contact method. For obvious reasons, simple /ipfs/ files won’t work, only dynamic (/ipns/) sites will work.

HTML Template

Here is a template webring HTML, which I’m using on this site:

<style>
    #ipfs-webring { padding-bottom: 10px; background-color: #675F74; hidden; display: inline-block;
            text-align: center; width: auto; color: white; font-family: sans-serif; border-radius: 5px; }
    #ipfs-webring div div { margin-top: 0px; }
    #ipfs-webring p { margin-right: 20px; margin-left: 20px; float: left; }
    #ipfs-webring a { font-weight: bold; color: white; }
</style>

<div id="ipfs-webring">
    <!-- here is my obfuscated mail, to maybe avoid spam:  jadedctrl ATTHESERVER teknik DOT io -->
    <p> <a href="https://ipfs.io/ipns/blahblah"> Prev </a> </p>

    <div style="float: left;">
        <a href="https://ipfs.io">
        <img style="width: 120px;"
         src="https://ipfs.io/ipfs/bafkreigtdgsgv2f3bkhsmxvku3bpnnqzubcxeupf7fff5f7l7tlm2v237a" />
        </a>
        <div> <a href="https://xwx.moe/lib/ipfs-webring.html"> Webring </a> </div>
    </div>

    <p> <a href="https://ipfs.io/ipns/blahblah"> Next </a> </p>
</div>
Picture of a blue-hued box with 'IPFS Webring' centered, with the text 'previous' and 'next' to it's left and right, respectively.
Picture of the template in-action.

Yeah my HTML isn’t so hot. But it’s a good starting point, an easy copy-paste. (You can see it in action at the front-page.)

Since I intend on pinning every webring member, feel free to use the gateway that I run this website on― https://gateway.xwx.moe ― instead of https://ipfs.io’s gateway.

Anyway, if you want to be one of the first people to join the webring, go ahead and e-mail me your address at jadedctrl@teknik.io, and whether you want to be the first “Previous” or the first “Next.”

Cheers.