-
Notifications
You must be signed in to change notification settings - Fork 501
Description
Hey @diasdavid,
With some of the advances we've made on Nomad, @ReidWilliams and I now have a couple specific questions regarding libp2p
for our next steps / where we might contribute.
Relevant Background & State
We are almost wrapped up porting Nomad over to a js-only package (the pure-js
branch is here). Our intent / end goal is for Nomad to run in the browser, connect to peers, receive messages and the like without reliance on anything outside of what IPFS
/ libp2p
/ nomad
provides.
Our browser bundle builds, and as we're now looking to expose more folks to this ecosystem, one of the on-ramps is to use it as a rapid prototyping tool (been doing this already within IDEO). So to meet the goal mentioned above we're taking a couple of steps to shim the js-only module.
And this is where we have questions...
Question: DHT
Because the DHT is not yet implemented in js-land, we are adding dht-shim
. Basically this is a simple server, store, and utils (only for use at this early stage) that take care of connecting peers.
I know the DHT has been on the roadmap and in the conversation for a while (also saw the recent question on it here). So with the above in mind, we're curious as to:
- How far off it might be (I saw work started on the DHT here)?
- Is this possibly an area where contribution is needed?
Question: Peers behind NATs
When it comes to peers behind NATs, it would be great to avoid reliance on a central signaling server (Note: the optionality of setting up your own signaling server is far better than not being able to participate). We were about to add the webrtc-star
transport, but before we did this, we wanted to check in with you to see:
- Are there any initiatives that we've missed in the community to help with connecting peers behind NATs?
- Are there any libraries that you're aware of that might help with this? (E.g.: perhaps there's an interesting project you know of and you're awaiting someone to implement the transport)
- Is the above-mentioned goal feasible?
Goal
Our goal is to keep moving things forward, and to continue learning by having people build :) Once we have a better understanding of the above areas, we'll get the next steps out for review!
Thanks in advance!