Blogging from localhost to IPFS
Telegra.ph is a really simple, no-login hosted individual blog post publishing from the makers of Telegram which has been around for a few years. I was looking at it again today thinking that it would be cool if, instead of publishing posts to a server you don’t control and could be taken down at any time, you could publish posts to IPFS.
It turns out that someone else more technically able than me had the same idea, and this GitHub repository allows you to do just that. In fact, you don’t even have to host the place in which you compose the blog, but instead can run it locally!
In practice, this means that I could just have a static web page (e.g. dougbelshaw.com) and link to a series of IPFS-powered pages. The downsides are that I can’t change what I’ve written, there’s no RSS feed, and I’m dependent on IPFS gateways to serve content to users of most web browsers.
But, hey, it’s cool.
If you have the right things installed and configured, the example at first link below should work for you. If not, the second has exactly the same content, served up from an IPFS gateway.
Update: I subsequently learned about the importance of ‘pinning’ so if the Cloudflare link doesn’t work, try this one.
It’s four years since I presented on IPFS and other censorship-resistant technologies in Barcelona. I was there during the vote for Catalonian independence, something that was only possible due to disseminating information via decentralised technologies.
Since then, Cloudflare has created an IPFS gateway, and Brave has built-in support for IPFS. These things happen slowly, often taking a decade to mass adoption as bugs and annoyances are ironed out. We’re getting there.
2 thoughts on “Blogging from localhost to IPFS”
This looks cool. I never got IPFS fully working on my Known site
I wonder if you add microformats and then then use granary.io to convert html to rss if that would work
Yeah, I think there are workarounds – for example using IPNS to have some kind of persistent decentralised identifier as well 🙂