Go wrapper for running nim-waku as a subprocess.
Go to file
Oskar Thoren 1ff392ef87
Misc existing (some nim-waku duplicates)
2021-06-13 20:53:50 +08:00
examples/chat2 Use wrapped node 2021-06-10 22:43:12 +08:00
go-waku Disable fleet checks 2021-06-10 20:35:00 +08:00
nwaku Misc existing (some nim-waku duplicates) 2021-06-13 20:53:50 +08:00
.gitignore Use wrapped node 2021-06-10 22:43:12 +08:00
Makefile Misc existing (some nim-waku duplicates) 2021-06-13 20:53:50 +08:00
README.md README/Makefile 2021-06-13 20:53:16 +08:00
go.mod go mod use local nwaku 2021-06-10 18:31:14 +08:00
go.sum go mod use local nwaku 2021-06-10 18:31:14 +08:00
nwaku.go Use wrapped node 2021-06-10 22:43:12 +08:00

README.md

go-nwaku

Go wrapper for running nim-waku as a subprocess.

Rationale

  1. Provide a friendly interface to use Waku for Go environments.
  2. More wood behind fewer arrows; promote code reuse.

Direction

For similar projects, see: https://github.com/ethereum/py-geth

JSON RPC spec that nim-waku exposes: https://rfc.vac.dev/spec/16/

Running

  • (Temp) Ensure you have wakunode2 nim-waku in the bin directory

API calls used by chat2

  • Query
  • Subscribe (subscribe+poll)
  • Publish

Peer management can be done by command line interface instead:

  • [] DialPeer
  • [] AddStorePeer
  • [] ListPeers

Caveats

For the existing wrapping:

Assumes we can spawn a child process. In some environments, such as on iOS, this may not be permitted.

For wrapping as a shared library, see https://github.com/status-im/nim-waku/pull/614 for WIP