Ipfs dynamic content like cms

Hi all guys!
I’m interesting about use ipfs like cms, but i understand it’s can work only with ipns.

For now, i’m see that ipns very slow, and publish name is slow to.
I’m from Ukraine, and we don’t have instruction on our language, so i can read it only on English, as i can understand, ipfs not suitable for cms sites.

Maybe someone have ideas, how to make something like cms?

I’m inspired by the ZeroNet, but it’s work different.

You can use CMS for content generation and then export it as a static site into IPFS.

IPFS is more like FTP than HTTP. You can use a static site generator like Jekyll or Hugo (see Any one publishing a jekyll blog on ipfs). You can also export a site from your CMS statically like @dealancer said. IPNS takes a few seconds/minutes to resolve, but it’s cached locally. If it’s still too slow, you can publish the site to IPNS, and put a link to the IPNS hash somewhere on the page (for example labelled Update). You then give people the regular IPFS hash. Here is an example of this. It doesn’t work right now, but you can see the principle behind where you click “load latest tracker” to refresh the page. But I’ve never found IPNS to be that slow.

ZeroNet works similarly to IPFS. You can’t have a CMS site on ZeroNet, the pages there are static too.

You can also use the stuff that @pgte is working on to build database-driven functionality without servers. You would have to build the CMS-type behaviors on top, or modify existing stuff to persist its data into these tools, but it gives you something more dynamic than IPNS by relying on pubsub and CRDTs.

See:

1 Like

@es_00788224 @flyingzumwalt Hi, ty for response. I thought about Jekyll and Hugo, it’s can be solution, but i want to try make somethink different.

Tevere looks like Orbit-Db, is it?
Ipfs pubsub it’s like socket.io?

I’m inspired with pubsub, and i have few questions

  • If i want to store secret data, for example passwords or credit card numbers, as i understood today ipfs keystore can’t encrypt data, so do we have any solutions?

  • Can i protect site from pinning?

Tevere looks like Orbit-Db, is it?

Same functionality, new code, more robust CRDT implementation.

ipfs pubsub it’s like socket.io?

It’s similar. Both use a pubsub pattern for bidirectional communication. Main difference: sockets.io relies on a server to coordinate communications. IPFS pubsub is serverless – the peers coordinate themselves without relying on a middleman.

If i want to store secret data, for example passwords or credit card numbers, as i understood today ipfs keystore can’t encrypt data, so do we have any solutions?

Content encryption is up to you. There are a number of tools and strategies out there. Eventually IPFS will support a variety of them, but for now you’ve got to do it yourself.

Can i protect site from pinning?

Not sure what you mean by this. One of the main points of using p2p techniques is that it allows peers to pin the content that they rely on or care about.

We’ve just published a new blog post, authored by Pedro (@pgte), about the PubSub primitives that js-ipfs exposes and how you can use them, make sure to check it out: https://ipfs.io/blog/29-js-ipfs-pubsub/