How to host a dynamic website on IPFS

How do we easily host a dynamic website and publish it using IPFS?

Most tutorials are for a single static page or have you using 3rd party software like Github.

If you wish to cut out webhosting sites and pinning services entirely, what do you need to do?

Also, if you wish to run this website at your home or office, what sort of hardware would you need?

I think many people are attracted to IPFS these days and are willing to switch over to using it more often but stumble here.

2 Likes

I’m pretty sure IPNS is the only way to have an actual fixed and unchanging CID which you can update the content under, and so that’s the place to look. For your use case of an updated website it might not be a problem that there’s one limitation with IPNS which is that it can take like up to 3 to 5 minutes (or longer?) to republish (update) with new content, because it has to transmit out the new name similar to what DNS does.

2 Likes

FWIW I currently run my website from home (it’s a smattering of random things while I toy with IPFS http://portal.thedisco.zone). I keep IPFS/IPNS using ipfs-sync, which will look at a directory, copy the contents to MFS, pin it, and update an IPNS key whenever it detects a change.

Like wclayf pointed out though, it can take a couple mins sometimes to actually see the changes reflected. However, I don’t mind.

I don’t think hardware requirements are super strict. I hear about some success running on Raspberry Pis. I personally run on my desktop computer, but I don’t power it off.

@Discordian I like what you did there! I’m just now learning GO so I can’t scrutinize it much, but I think I get it, and if there are no plans to build this capability into MFS already, I hope the IPFS developers find it and help you finish it, or see if it or something like it can become part of MFS as a ‘sync’ command.

There’s huge demand in the IPFS world for a way to sync to MFS. You may have already searched around on this forum and found that out. There have been several discussions about this kind of thing. Nice work, and thanks for sharing it here.

1 Like

Don’t worry, lidel has been perusing the issue tracker from time-to-time, I’m really happy you enjoy it! You’ll certainly see lots of progress on it in the coming days :slight_smile:.

2 Likes

Thanks!

MFS = Mutable File System

1 Like

Fleek.co seems to indicate they can do this, but I don’t think they can.

“Fleek is everything you need to host fast, modern sites & apps on IPFS.” - official Fleek docs

If they’re just spinning up a traditional server instance to do the “dynamic” part of the hosting (i.e. generating custom HTML/JS/CSS given a user and context), the I’d prefer they said that upfront.

Hi! How about a “trustful” approach instead of “trustless”? I’ve got an idea about how a trustful network can be organized on a base of IPFS/IPNS: A preliminary discussion of the “Workswap” protocol .