Waku node and protocol.
Go to file
Hanno Cornelius 106418113f
Update toychat default content topic (#583)
* Update toychat default content topic

* Update examples/v2/config_chat2.nim

Co-authored-by: Franck Royer <franck@status.im>

* `toychat` to `toy-chat`

Co-authored-by: Franck Royer <franck@status.im>
2021-06-02 11:05:26 +02:00
.github/workflows Automatically add new issues to project board (#566) 2021-05-24 13:47:50 +08:00
docs Add resume to waku node api (#564) 2021-05-26 12:33:22 -07:00
examples Update toychat default content topic (#583) 2021-06-02 10:59:15 +02:00
metrics Fixed grafana dashboard to view Waku v2 metrics (#357) 2021-02-03 17:49:34 +02:00
tests Fix keepalive for connected peers (#588) 2021-06-02 09:53:34 +02:00
vendor Bump chronos and fix exception tracking issues (#436) 2021-03-26 10:52:04 +01:00
waku Fix keepalive for connected peers (#588) 2021-06-02 09:53:34 +02:00
.dockerignore add a Dockerfile for creating nim-waku images 2020-05-27 12:51:20 +02:00
.gitignore Libwaku spike start (#510) 2021-04-28 19:13:34 +08:00
.gitmodules Bump chronos and fix exception tracking issues (#436) 2021-03-26 10:52:04 +01:00
CHANGELOG.md Add resume to waku node api (#564) 2021-05-26 12:33:22 -07:00
Dockerfile Fix Docker image - missing librln.so file (#406) 2021-03-04 17:55:27 +02:00
Jenkinsfile ci: add MAKE_TARGET parameter, remove default from IMAGE_TAG 2020-12-04 11:18:31 +01:00
LICENSE-APACHEv2 Fix name in licence (#517) 2021-04-28 20:00:45 +10:00
LICENSE-MIT Fix name in licence (#517) 2021-04-28 20:00:45 +10:00
Makefile Add chat2-matterbridge (#532) 2021-05-06 15:43:43 +02:00
README.md Rust is needed to compile the project (#520) 2021-04-29 16:04:50 +10:00
config.nims bump vendor/nimbus-build-system (#36) 2020-07-01 09:43:23 +02:00
env.sh Set up repo to make use of nimbus-build-system 2020-05-01 11:29:16 +02:00
waku.nimble Add chat2-matterbridge (#532) 2021-05-06 15:43:43 +02:00

README.md

nim-waku

Introduction

The nim-waku repository implements Waku v1 and v2, and provides tools related to it.

  • A Nim implementation of the Waku v1 protocol.
  • A Nim implementation of the Waku v2 protocol.
  • CLI applications wakunode and wakunode2 that allows you to run a Waku v1 or v2 node.
  • Examples of Waku v1 and v2 usage.
  • Various tests of above.

For more details on Waku v1 and v2, see their respective home folders:

How to Build & Run

These instructions are generic and apply to both Waku v1 and v2. For more detailed instructions, see Waku v1 and v2 home above.

Prerequisites

  • GNU Make, Bash and the usual POSIX utilities. Git 2.9.4 or newer.
  • PCRE
  • Rust

More information on the installation of these can be found here.

Wakunode

# The first `make` invocation will update all Git submodules.
# You'll run `make update` after each `git pull`, in the future, to keep those submodules up to date.
make wakunode1 wakunode2

# See available command line options
./build/wakunode --help
./build/wakunode2 --help

# Connect the client directly with the Status test fleet
./build/wakunode --log-level:debug --discovery:off --fleet:test --log-metrics
# TODO Equivalent for v2 

Waku Protocol Test Suite

# Run all the Waku v1 and v2 tests
make test

Examples

Examples can be found in the examples folder. For Waku v2, there is a fully featured chat example.