Skip to content

Document browser connectivity story and roadmap #154

@BigLep

Description

@BigLep

The browser connectivity site has been deployed but there are still many things to be done:


Done Criteria

A URL can be shared that answers:

  1. How a browser node can connect to other nodes (other browser nodes, other non-browser nodes), accounting for the differences amongst browsers and libp2p implementations.
  2. Sample code making these connections.
  3. How to follow along on contribute to the development tracks

If someone isn't aware of the intricacies of this topic or has outdated information, they should be able to start at this resource and quickly learn the options, the options' pros/cons, what's available today, what's coming, how to follow, and how to help.

While not end-user facing, we also need to do the following before marking this as done (or these items should move to a separate item that we also track - we need to make sure we don't drop them just because we get the content done):

The list here was moved to the top.

Why Important

The browser connectivity story has improved over the last couple of years, but there isn't a one-size-fits-all silver-bullet. We need to help developers understand the landscape so they don't oversimplify or erroneously write-off libp2p.

Not only do we want developers informed, but this is an exciting time when it comes to browser connectivity, and we'd love to capture some of that interest to help develop and test the improvements that are coming.

User/Customer

Developers using libp2p so they can understand if/where/how libp2p can help them with their browser applications.

Notes

  1. Some of this information is in https://github.com/libp2p/specs/blob/master/connections/hole-punching.md#vision. Things it doesn't include currently:
  • Status of each transport in each libp2p implementation
  • Browser vendor specifics (e.g., Chromium having WebTranport support)
  • Sample code for getting started
  1. This issue was created in the libp2p/docs repo, but that doesn't mean it needs to be solved here. If this information is authored somewhere else, we should at least have a link from the docs website to it.

Metadata

Metadata

Labels

P0Critical

Type

No type

Projects

Status

Planned

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions