The Interplanetary File System (IPFS) is a peer-to-peer hypermedia protocol aimed to replace HTTP with a name-based system. One of the main use cases for this new technology is that it allows you to host distributed websites.
However, IPFS currently presents two major barriers when it comes to the setup of these distributed websites:
- The name/address of the distributed website is far from human readable
- The upload of pages isn’t easy, and most of the time the website loads slowly
The first problem will be addressed over the coming weeks, as part of an additional article around the search engine of Dweb.page. The current article will focus on how to host distributed web pages with Dweb.page in literally a couple of seconds!
There are several tutorials on how to do this (e.g. here or here). In these tutorials, you usually need to install IPFS on your computer, make sure that your website contains only relative links and upload the whole folder to your IPFS gateway (with ipfs add -r folder/). This allows your distributed website to load fast on your local gateway, but once your site is requested from a different gateway like ipfs.io/ipfs/, it takes quite a while to load the page.
The best way to solve this is to create a single page application (SPA) and put all the code into one HTML file. This way your webpage loads much faster on the distributed web and you don’t have any issues with links. Of course, creating a small hello world website by putting all the code into one HTML file is fine, but for a big project, you might want to use something else.
That is why for the development of Dweb.page we are using Webpack together with the HTML Webpack Plugin as well as html-webpack-inline-source-plugin. If you never heard of Webpack, there are tons of helpful tutorial out there, like the YouTube tutorial series by Ihatetomatoes.
Now, after you created your awesome webpage, we can host it on the distributed web. Just take the HTML file, select the public sharing mode and upload it on Dweb.page. That’s it. I bet you never hosted a distributed webpage or even a normal webpage so fast!
If you want to keep this file available, even though people might not constantly open it, you need to pin it to an IPFS gateway. We can help you with this, just send us the hash of your webpage, and we make sure it stays online. And since you are sending us an email anyway, maybe include some feedback/ideas for the further improvement of Dweb.page 😉