Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Example projects that use libp2p #64

Closed
JustinDrake opened this issue Jun 10, 2016 · 15 comments
Closed

Example projects that use libp2p #64

JustinDrake opened this issue Jun 10, 2016 · 15 comments
Labels
good first issue Good issue for new contributors help wanted Seeking public contribution on this issue status/ready Ready to be worked topic/docs Documentation

Comments

@JustinDrake
Copy link
Contributor

JustinDrake commented Jun 10, 2016

I come from the OpenBazaar project and I am new to go-libp2p and go-ipfs. Are the examples that use libp2p in a production environment? Where's the best place to learn libp2p by example?

@whyrusleeping
Copy link
Contributor

Right now, the only production use of go-libp2p (that i know of) is in go-ipfs. We would love to work with others on helping them use libp2p for their projects too if theres any interest.

@JustinDrake
Copy link
Contributor Author

Cool. Paging @hoffmabc and @cpacia from the OpenBazaar project that are looking to use go-libp2p in production.

@hoffmabc
Copy link

Yep we will be using it.

@whyrusleeping
Copy link
Contributor

@hoffmabc @cpacia I'd love to have a chat sometime with you guys about integrations and work with you to make sure everything goes smoothly. This is very exciting :)

@daviddias
Copy link
Member

Adding myself to this thread :) Interested on participating on these conversations.

@JustinDrake
Copy link
Contributor Author

@whyrusleeping @diasdavid OpenBazaar's current plan is to reuse most of the go-libp2p codebase but make a network fork to allow for longer TTL on certain types of DHT data. What do you guys think? Is a network fork meaninful? cc @cpacia and inviting @michaelfolkson

@JustinDrake
Copy link
Contributor Author

Forwarding @cpacia's comment from Slack:

The ttl is 24 hours by default. It's too short for the messaging system. That would mean if a message recipient doesn't come back online in 24 hours they wont receive your message. I've changed it to 7 days for message pointers.

@Kubuxu
Copy link
Member

Kubuxu commented Jun 11, 2016

I wouldn't use DHT for storing messages hashes, it is too unreliable in my opinion for that purpose (and how do you retrieve message to someone from DHT?), there isn't anything ready for messages yet, but once pubsub is implemented fully if you add OrbitDB to that system similar to patchwork should be quite easy to implement.

@whyrusleeping
Copy link
Contributor

The dht could be used for that just fine i think, you would just need to have both parties online within one TTL of eachother to complete a message pass (once you modify the dht to allow storage of arbitrary non-hash message data, which is pretty simple). You wouldnt necessarily be 'splitting the network' but theres no real worry around a 'network split'

@JustinDrake
Copy link
Contributor Author

Here's a video that shows what the OpenBazaar team has done so far:

https://www.youtube.com/watch?v=HG1eKf-Aj0o

@whyrusleeping
Copy link
Contributor

@JustinDrake that looks great!

@cpacia
Copy link

cpacia commented Jun 12, 2016

I haven't modified what type of data is stored in the dht. It's still a
provider object (peer id and addresses).

The key is a hash of the (prefix) of the recipient ID and the provider
address is the location of the ciphertext encoded as a multiaddr.

The peer ID field in the provider obj is not needed for my purpose so I use
it as a flag to identify this provider as a message pointer for the purpose
of using a different ttl.

The first 12 bytes are zeros and the remainder is random.

If it finds a provider with peer ID that starts with 12 zeros it applies
the 7 day ttl. Otherwise the ttl is left at 24 hours for regular ipfs
providers.
On Jun 12, 2016 3:20 PM, "Jeromy Johnson" notifications@github.com wrote:

@JustinDrake https://github.com/JustinDrake that looks great!


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#64 (comment), or mute
the thread
https://github.com/notifications/unsubscribe/AES8hLrzCRmkm_MzrcRfgoIKcY7ciw2Jks5qLFwUgaJpZM4IzDjR
.

@whyrusleeping whyrusleeping added the status/deferred Conscious decision to pause or backlog label Sep 14, 2016
@zippy
Copy link
Contributor

zippy commented Feb 21, 2017

Adding myself to this thread as we're going to be using libp2p for holochain (http://ceptr.org/projects/holochain)

@bigs bigs added topic/docs Documentation help wanted Seeking public contribution on this issue good first issue Good issue for new contributors labels Sep 18, 2018
@bigs
Copy link
Contributor

bigs commented Sep 18, 2018

would love to get someone to contribute a little blurb to our readme with projects using libp2p

@bigs bigs added status/ready Ready to be worked and removed status/deferred Conscious decision to pause or backlog labels Sep 18, 2018
@marten-seemann
Copy link
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good issue for new contributors help wanted Seeking public contribution on this issue status/ready Ready to be worked topic/docs Documentation
Projects
None yet
Development

No branches or pull requests

9 participants