ipfs / ipfs-docs

📚IPFS documentation platform
https://docs.ipfs.tech
294 stars 390 forks source link

Rewrite "Simple chat app" tutorial #1459

Closed 2color closed 1 year ago

2color commented 1 year ago

Background

The impressive peer-to-peer chat app guide that @TheDiscordian created is no longer functional for several reasons:

Both impose severe impediments on browser-to-browser connectivity with libp2p — which, as it stands, is currently unsupported https://github.com/libp2p/js-libp2p/issues/1462.

What can we do?

Informing readers about the limitation is vital here — let's ensure we set the right expectations.

May be helpful to link to the libp2p connectivity page for this.

TheDiscordian commented 1 year ago

The issue with CircuitRelayV1 has a warning header here: https://docs.ipfs.tech/how-to/create-simple-chat-app/#p2p-circuit

The WebRTC-Star section should likely be completely removed. The information is accurate though, and if anyone clicks one of the WebRTC-Star links they get a very clear warning.

If we add warnings about both of these we'll need a solution to add that actually works today, or to me it'd make more sense to hide or remove the guide for now. The guide is useful, but it's not really useful today because the things it talks about don't really work anymore.

2color commented 1 year ago

The guide is useful, but it's not really useful today because the things it talks about don't really work anymore.

My suggestion would be to remove it for now (with a heavy heart because it was such a great example). We still have it on the blog, but by being in the docs, we're setting users up for failure.

In the mid-term, I'd suggest we follow the work on Helia and CircuitRelayV2 for browser-to-browser connectivity. Once we have some more tooling to do browser-to-browser connectivity maybe we can overhaul the guide.

ElPaisano commented 1 year ago

Step 1: Suggestion is to remove this tutorial Step 2: @TMoMoreau to sync with @TheDiscordian about new tutorial, blog post

ElPaisano commented 1 year ago

@TMoMoreau I think that Step 1 (remove the outdated tutorial, and maybe add a redirect somewhere so that it doesn't just 404) should be done as soon as possible, since it's outdated. Is that something you think you can get to today? Then, can work on Step 2 a little more leisurely

Labeled the issue P1 and P2 to indicate this thought, that it's 2 tasks of different priorities. Thoughts?

ElPaisano commented 1 year ago

Suggestion for step 1:

ElPaisano commented 1 year ago

Edit: Reread this issue and realize the note added in 1466 doesn't address this issue... so nvr mind, I would vote to remove this

Update: https://github.com/ipfs/ipfs-docs/pull/1466 should address Part 1 of this, so we can just leave the tutorial as is for the moment.

TMoMoreau commented 1 year ago

With step 1 of this issue finished, I added new labels for step 2.

Unsure about the priority of the second step at the moment, this can be discussed here or in a sync.

2color commented 1 year ago

Closing this in favour of https://github.com/libp2p/universal-connectivity/issues/1