The world wide web is both the biggest deployment vector and least controllable surface for IPFS. There are opportunities and challenges with bringing IPFS support to rendering engines, browsers, gateway-served content, web apps, and browser extensions. It is these unique dynamics that motivated us to organize a dedicated content track for them at the annual gathering of IPFS implementers known as IPFS Thing.
To catch you up to speed, the Browsers and the Web Platform track at IPFS Thing 2022 (opens new window) was only a half day long with a small group of people. It had browser and gateway progress updates, some alternate visions of how a content-addressed web could work on desktop and mobile, and also some straight-up "stuff is hard still" talks. You can listen to all of these talks (opens new window) on YouTube.
A few months later at IPFS Camp 2022 (opens new window) we had a similar track with many more people and the tone changed a bit — we saw more working code, and even features shipped in products that were represented, and we covered platforms outside of web, like native mobile and space. You can watch the full playlist of videos (opens new window) on YouTube as well.
This brings us to IPFS Thing 2023 that occurred last month. I had the privilege of broadening the lens even further than we experienced at the previous two gatherings. We examined the opportunities, challenges, products, protocols, and experiments in the intersection of these two distinct paradigms of HTTP and IPFS. This area of the IPFS ecosystem is changing so rapidly that HTTP Gateways to the IPFS network (opens new window) had a whole track to itself this year. This gave the Web track more room to move, so we were able to cover everything from naming systems to publishing pipelines and JS toolkits and more.
In the rest of this blog post you'll find highlights, links, and commentary from the track lead (that's me, Dietrich) on why these talks were selected and why I think they're helping make a better web for us all.
You can find the full video playlist for the IPFS on the Web track here (opens new window), and I'll link each below as well.
# IPFS on the Web in 2023 (so far) - Dietrich Ayala
Dietrich (opens new window) gave a short overview of various initiatives and collaboration projects of the Browsers, Platforms & Standards team at Protocol Labs. It was a peek into the latest IPFS features in Brave Browser, early work into Chromium native support for IPFS, and various other work those weirdos are pushing forward.
# What Is The Web? - Robin Berjon
Good morning. Have you had a coffee yet? Ok great because you're going to need it for this talk. Robin (opens new window) sets the perspective for the day by asking us one of the most difficult questions: "What is the web, actually?" It's big. It's special. We complain about it. But we need to have language to describe what it is in order to talk about how it could grow and change. Warning: This talk begins at a point in history over 100 years ago!
# A better web: secure, private, p2p apps with user-owned data and identity - Ian Preston
Peergos (opens new window) has been building your private space online for half a decade, and it shows: Ian (opens new window) and team have built a mostly exilfiltration-proof application platform on IPFS which works in the browsers of today. The idea of web content that can't phone home might make you say "hmmm", but it could just be the antidote to the surveillance-is-required-to-pay-the-bills version of the web we have today.
# WNFS: Versioned and Encrypted Data on IPFS - Philipp Krüger
It's the web. It's p2p. It's files. It's private. It's WNFS! Philipp (opens new window) walks us through how the WebNative Filesystem works, and how it works in browsers specifically. It's not easy, but none of us signed up for easy. That being said, you can sign up to join the WNFS Working Group (opens new window) today after watching this talk.
# Content Based Addressing and the Web Security Model - Fabrice Desré
Speaking of hard... have you ever decided that the problem you'd like to fix in the world is Google and Apple's stranglehold on our daily digital lives? That's what Fabrice (opens new window) does with Capyloon (opens new window), a complete web-based mobile operating system. When you control the OS, you control the world can do veeeerrrry interesting things. Fabrice gave us a deep dive into the origin security model (opens new window) today and how radically different it can be in a content-addressed world.
# Hello Helia - achingbrain
Bye Felicia. Hello Helia. Thanks achingbrain (opens new window). Welcome to a new way to IPFS in JavaScript, on the web, or on the server... finally with nice things like DHT support. It should've been called banana. But we like it anyway.
# JavaScript performance - how to wring the most out of your Helia deployment - achingbrain
Hey it's achingbrain (opens new window) again, this time with a deep dive into Helia performance and optimizing for the environment you're deploying to. JavaScript is the fastest language for the environments it lives in which other languages can't even exist, so take that.
# Connecting everything, everywhere, all at once with libp2p - Prithvi Shahi
First, the person who gives this talk is not Prithvi, it's Max. Second, Prithvi is a genius for thinking up a talk like this. Please enjoy all the transports everywhere all of the time.
# The Incredible Benefits of libp2p + HTTP - Marten Seemann & Marco Munizaga
In the ageless words of Gandalf, the headmaster of Hogwarts: "be like water". Or something like that. Anyways, if you're familiar with the challenge of writing code for the web that has to pretend that it's not actually stuck in a web browser tab, but instead is actually connected to a global transport-agnostic peer-to-peer network, then you'll understand how important it is to make friends with your environment and use the *!#? out of what it gives you. This talk from Marten and Marco shows you how the changing landscape of the network layer of the web platform is allowing libp2p to operate unfettered while still stuck in a tab in a window in a browser on your computer on earth.
# The Name Name Service - Blaine Cook
NNS.. NNS.. NNS... goes the beat. Now that you're bouncing your head, follow along as Blaine Cook shares his vision of how we solve one of the three hardest problems in computer science: how to make the perfect Hollandaise. Er, no that wasn't it. NAMING! Yes, that was it. The Name Name Service is a breathtakingly simple approach to flexible, veriable, integrate-able, old-world-compatible, and human-readable names for our digital things. Thank you Blaine.
# Building decentralized websites on IPFS - Ryan Shahine
Decentralization is cool but it's so hard and you have to be super technical to even... wait, what? I can just... drag and drop? What I see is what I get?! With Portrait, yes. Ryan Shahine shares Portrait's slick and simple site builder for publishing your sites to IPFS. No-code sites for non-technical creators is such a wonderful thing to behold.
# ODD.js, a technical overview - icidasset
Oddly enough, DID you know UCAN build decentralized applications with that WNFS stuff we heard about earlier? In this preview of the final emergent form of a bunch of Fission's tools coming together like Voltron, you'll meet Odd.js - a toolkit for building applications that has all of the core bits you need, from identity to naming to storage to security. The only odd thing is that we didn't have this yet.
# IPFS native frontend development using Importmaps - Dilip Shukla
Imagine if your CDN was a massive cooperative global distributed network that 1) wasn't a single company, and 2) pushed alllll the way up into your client-side build tooling, making your pages immediately available. WHAT YOUR DOM WAS ACTUALLY A DAG... ok maybe that's too far, but what Lagom is doing is finding exactly what the right balance is. In the future we'll look back and wonder why we didn't do this from the begining...
# Explorations into Decentralized Publishing - David Justice
The Browsers, Platforms and Standards team wants to share our thoughts early and often. And we want to do it on IPFS. There are all kinds of ways to do it, but each have their trade-offs... but it's not clear what those are until you go make a bunch of mistakes. So we're going to make them for you. David Justice is working on approaches for building our team blog with some friends at Trigram and shares what the first stab at it looks like.
# Thank you!
Thanks to all the speakers for the day and also to the rad people who joined and asked great questions.
Until our next event, come hang out in our superbridged megachannel:
- #browsers-and-platforms on Filecoin Slack (join (opens new window))
- #browsers-and-standards on Element/Matrix (join (opens new window))
- #browsers-and-standards on IPFS Discord (join (opens new window))