I was reading up on Web 3.0 few months ago and the search results were mostly blockchain technologies, decentralization and cryptocurrencies, especially Polkadot, due to its relationship with Web3 Foundation. Hidden beneath this huge pile of digital coins and tokens, there was a brief mention on distributed web via IPFS. That caught my interest. Will it be possible to host my own web server/web site from my own computer at home again?
What is IPFS?
IPFS stands for InterPlanetary File System. ( Don’t ask me why interplanetary, I have no idea. 😀 ) It is a peer-to-peer network protocol used for storing and sharing data in a distributed file system. IPFS uses content addressing to uniquely identify each file, akin to using a hash as an identifier. For every change that the file has, its hash or identifier will also change.
IPFS implementation on how users host and receive content is similar to BitTorrent. Any user in the network can server the file by that content address and other peers can find and request it from any nodes who has it. The difference between IPFS and BitTorrent is that IPFS aims to create a single global network while BitTorrent is more focused on distributing data and files in a decentralized manner. To access an IPFS site, you either have to install an extension or use the Brave browser or view through a public gateway. You can check out the official website of IPFS to find out more.
The alternative to IPFS would be Hypercore Protocol. For this, you will need the Beaker browser to access the sites. I had not read up on this yet so I cannot comment. There used to be Opera Unite if you just want to host a static website from your home computer but it has been discontinued. However, you can try your luck by downloading older versions of the Opera browser as some people have claimed to have gotten it to work.
If you are going to get your hands dirty with IPFS, Unstoppable Domains and Pinata deserves a mention.
What is Unstoppable Domains
Unstoppable Domains is a domain service for the decentralized web by building blockchain-based domain names. It is quite similar to the ETH naming services. The idea is similar to owning a domain name for your website, example “mywebsite.com”, except in this case, it goes beyond owning a name for your website. You can link it to your crypto wallet addresses, so instead of sending your coins to a hash address, you can send it to your address like “someone.crypto”. The best part is, unlike traditional domain subscription which you have to pay annually, this is a one time payment.
However, it is not so straightforward like signing up and get the unique address you have chosen. You will need a crypto wallet (i.e. metamask) and to mint the address, then update the relation/link to your IPFS and wallet address to the blockchain. Not to worry though, their guide and FAQ are very clear and easy to understand.
Visit Unstoppable Domains for more information.
What is Pinata
Pinata is a pinning service that allows users to host files on the IPFS network. Pinning services have IPFS nodes that are always online so you do not have to worry that there will be scenarios that there are no nodes hosting your data. The more nodes you have, the better it is.
Pinata offers other services too. You can check out Pinata website for more information.
Trying out IPFS
There were a lot of guides and how to articles online, so stepping up IPFS and hosting your site wasn’t as difficult as I thought. I did have to read up a lot on the IPFS, Pinata and Unstoppable domain websites before I had any idea what I am supposed to do. That took the most amount of time actually as compared to setting up the site. I did get into some boo-boos but none are deal breakers. Below is a summary of what I had done.
- Build my single page static website (HTML + CSS)
- Install IPFS on my computer
- Setup the folder and copy the created HTML page
- Add HTML page to IPFS (it will take a while to get it up on the node)
- Create and setup Pinata account as an alternate node
- Out of curiosity, create and setup an Unstoppable Domain account
Unfortunately the domain I bought does not support IPFS website at the moment 😦
You can check out the end result here.
Thoughts on IPFS
It was certainly an eye opening and educational experience setting up my IPFS website and it also gave me a better understanding on what “Web 3.0” really is about, without the hype.
On IPFS, it was not meant for the average joe and more as an enterprise solution to store static assets and/or content to avoid network failures and DDOS attacks. As compared to hosting a normal HTML site on HTTP web servers, doing it on IPFS requires more work and technical knowledge. I had tried Opera Unite to host my own web site few years back and I could tell you that the user experience was much more user friendly than doing it on IPFS. It would certainly be more challenging and tedious to maintain a WordPress like website on IPFS. Not just that, most browsers, with the exception of Brave browser, do not support IPFS protocol out of the box, so your audience would be limited.
Thoughts on Web 3.0
I am of the opinion that Web 3 is too overhyped right now and most people do not have a clear understanding of the technology and its use cases. A lot of people believe that Web 3.0 will replace Web 2.0 and Web 2.0 technologies will be a forgotten past in the next few years. Web 2.0 is not going to be replaced and neither Web 3.0 will dominate Web 2.0 entirely. Both Web 2.0 and 3.0 will complement each other instead of fighting for dominance. Similarly we won’t have full decentralization, there will always be use cases that requires centralization to exists. There has to be a compromise at times.
The strength of Web 3.0 belongs to the backend, on how things operate under the hood, from making content delivery more resilient to providing accountability to transactions and spawning a new financial ecosystem.
Web 2.0 will play a vital role in the adoption of Web 3.0 technologies by providing the UX/UI (interface and user experience) to onboard the masses for adoption. You can have the best blockchain technologies but if you cannot provide usability for the common folks out there, it is pretty useless.
This synergy of Web 2.0 + 3.0 will open another new exciting chapter in the history of humanity. Just look at Decentralized Finance (DeFi) and Decentralized Autonomous Organization (DAO) to get an early feel of it. We are still early though but it will mature and arrive at our door step pretty soon.