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

[NEW]: Waku 'light node' in rust #76

Open
9 tasks
ameba23 opened this issue May 13, 2024 · 2 comments
Open
9 tasks

[NEW]: Waku 'light node' in rust #76

ameba23 opened this issue May 13, 2024 · 2 comments
Labels
creating-new-team You have an idea and want to start a new team.

Comments

@ameba23
Copy link

ameba23 commented May 13, 2024

Introduction

  • Who you are: My name is Peg, i grew up in London and live in Germany. I am passionate about peer-to-peer networks and protocols. github.com/ameba23 gitlab.com/pegpeg.
  • What you do: I work for Entropy, a threshold signing MPC network. Previously worked on Dark Crystal social key recovery.
  • How you got first into Ethereum: I was working on a social recovery system for the peer-to-peer social network 'secure scuttlebutt'. Since key recovery systems are also relevant to blockchain we had a lot of interest from blockchain projects which took me in that direction.
  • What brings you to ETHBerlin: The opportunity to learn together with a bunch of motivated hackers.

Idea description

Waku 'light node' in rust

Waku is a suite of generalised messaging protocols aiming to be the communication standard for the decentralised web. It is used by Status instant messaging, Railgun and the Graph.

Waku has implementations in Nim, Go and JS. For rust there are bindings to the Go implementation, but these require that the Go implementation is built and installed and make it difficult to understand logs and errors without understanding the Go implementation.

There is already an unofficial rust implementation, but its is not actively maintained and has several issues. But it can serve as the inspiration or base for this project.

Given how much time we have, the proposal is to only make a 'light node', that is implement the following protocols:

These are much simpler and easier to implement than the full-node protocol, but downside is that they rely more on existing infrastructure, meaning things are more centralised. However it does allow us to be able to send and receive Waku messages, so its a good start.

Skillset

What skills do you need, or think you might need to implement the idea?

  • Knowledge of the waku protocols
  • Knowledge of libp2p (as waku is largely based on libp2p)
  • JS/typescript - for understanding the waku JS implementation
  • Go - for understanding the waku Go implementation
  • Nim - for understanding the waku Nim implementation
  • Rust - for this project
  • General experience with protocols / networking
  • Enthusiasm!

Communication

  • Matrix handle: @peg_23:matrix.org
@ameba23 ameba23 added the creating-new-team You have an idea and want to start a new team. label May 13, 2024
@gordon-to
Copy link

I'm a golang dev with experience in JavaScript. Im also familiar with rust and nim. I'm new to the web3 space and looking for a team.

matrix: gordon-to:matrix.org

@ameba23
Copy link
Author

ameba23 commented May 26, 2024

Here is the project, if anyone is interested: https://github.com/LesnyRumcajs/waku-oxidized

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
creating-new-team You have an idea and want to start a new team.
Projects
None yet
Development

No branches or pull requests

2 participants