Minimal viable code

I do not know if this is the right place to ask. But here is my question. I want to learn libp2p under the hood. So I suppose that might be a good practice by reimplementing a very small part of the libp2p. However I am completely new to libp2p. Is there any suggestions on this such as the start point of code base?

Thanks

Pick up an example (i.e. go-libp2p/examples/echo at master · libp2p/go-libp2p · GitHub) and then try to figure out what something like NewStream() actually does by tracing the code. This will take you to “places”.

1 Like

Thanks for the suggestion!