How to get started with libp2p?

I am wanting to connect to the libp2p swarm, but I have no idea where to start. The erlang-libp2p documentation is virtually non-existing. In the docs there isnæt any start_node or connect commands I can make sense of.

Has anyone here any n00b accessible info on this library? The Helium erlang-libp2p is referenced from the libp2p website as yellow, meaning in progress/usable. But i can find absolutely no info on how to get started. It’s not in hex.pm, but some of the support libraries are.

Feel free to chip in and get a little discussion started. I’m completely at an impasse.

1 Like

Hello - did you ever solve this ? I am basically at the same point in my current project. I need to find a suitable p2plib - and want to use erlang/elixir. One could revert to using Rust with Rustler, but then all the erlang-vm advantages will be gone.

I gave up on doing it with erlang/elixir, but I found that go has a pretty erlang node library. So I’ve created the libp2p functionality in go. https://github.com/bahner/go-space
Don’t use that, but do look at it. It works really well. I’m just changing it every other week at the moment. You could fork and use a skeleton.
This way I can easily call libp2p functions as a remote genserver from elixir.

If we can gather a group of people to develop the libp2p library, I’m game - but I can’t take responsibility for any more libraries at the present time.

If you just want IPFS/IPNS/IPLD functionality, then I maintain these libraries:

https://hex.pm/packages/ex_ipfs

I intend to keep them up2date.

Hope this helps a little bit.

Kind regards,
bahner

tor. 26. okt. 2023 kl. 14:20 skrev mtdk via Elixir Programming Language Forum <noreply@elixirforum.com>:

1 Like