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.