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

Getting Started tutorial for golang #16

Closed
yusefnapora opened this issue Mar 5, 2019 · 2 comments · Fixed by #45
Closed

Getting Started tutorial for golang #16

yusefnapora opened this issue Mar 5, 2019 · 2 comments · Fixed by #45

Comments

@yusefnapora
Copy link
Contributor

We should have a "Getting Started" style tutorial for the main libp2p language implementations. This issue tracks the need for the golang tutorial.

This should be a "conversational" step-by-step tutorial that covers just enough to get a minimal p2p example running. Ideally this will serve as "chapter one" in a series of tutorials, so we don't need to cover everything under the sun.

  • installing prerequisites (e.g. install go)
  • importing libp2p dependencies
    • should use gomod
    • is it worth discussing gx?
  • instantiating a node on some transport (maybe TCP for simplicity)
  • simple p2p communication, e.g. having one node ping another

Related concepts:

  • transport
  • protocol dispatching (multistream)
  • stream muxing
  • (maybe) encryption / connection upgrading
    • not strictly necessary for first tutorial, could save for next round
@lmars
Copy link
Contributor

lmars commented May 12, 2019

@yusefnapora I'm interested in contributing to libp2p, I've been reading through the docs and I noticed this tutorial isn't written yet.

I'm a pretty experienced Go developer, so as I'm experimenting I'm considering writing this tutorial as a way for me to both learn the library and to contribute to the project, I just wanted to check if progress has already been made or if you're happy for me to just go ahead and write it from scratch?

@yusefnapora
Copy link
Contributor Author

@lmars I would love if you want to work on the go tutorial! I've been delaying it since I'm fairly new to go and didn't feel as confident vs the js one. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants