Waku node and protocol.
Go to file
Aaryamann Challani a0d8cadcbb
chore(Makefile): Make zerokit the default RLN implementation (#1190)
* chore(ci): add zerokit test

* fix(ci): typo

* fix(Makefile): RLN points to zerokit, RLNKILIC points to kilic impl

* fix(ci): remove zerokit test workflow now that zerokit is default

* fix(Makefile): zerokit in ci

* fix(Makefile): do not compile kilic by default

* test(nix): add llvm to nix shell

* test(nix): clang

* fix(nix): mkShell

* fix(nix): mkShell

* fix(nix): err

* fix(nix): add binutils to macos nix shell

* fix(nix): test with musl-tools

* fix(nix): remove musl-tools

* fix(nix): add Security module

* fix(nix): gcc for linux, clang for macos

* test(Makefile): set CC to env

* Revert "test(Makefile): set CC to env"

This reverts commit fdab95f2cd0bdef916744d793ebf7005dd1d4396.

* test(nimbus-build-system): bad gcc

* fix(nix): remove optional for linux

* Revert "test(nimbus-build-system): bad gcc"

This reverts commit c6b81f8132.

* fix(nix): semicolon

Co-authored-by: G <28568419+s1fr0@users.noreply.github.com>
2022-10-05 11:50:24 +05:30
.github chore(ci): skip test workflow execution for docs changes 2022-09-22 13:25:00 +02:00
ci ci: build v1 and v2 if shell.nix is changed 2022-10-04 18:29:13 +02:00
docs chore(rln-relay): namespaced flags (#1204) 2022-10-03 13:25:56 -07:00
examples chore(rln-relay): namespaced flags (#1204) 2022-10-03 13:25:56 -07:00
metrics chore: update existing Grafana dashboards (#1166) 2022-09-20 10:01:54 +01:00
tests fix(store): Move page info logic to waku store protocol 2022-10-03 17:36:17 +02:00
vendor chore(rln): Update zerokit submodule and RLN APIs (#1209) 2022-10-05 00:06:33 +02:00
waku chore(rln): Update zerokit submodule and RLN APIs (#1209) 2022-10-05 00:06:33 +02:00
wrappers Refactor wakunode2.nim (#664) 2021-07-14 19:58:46 +02:00
.dockerignore add a Dockerfile for creating nim-waku images 2020-05-27 12:51:20 +02:00
.gitignore chore: add nimbus-build-system.paths to gitignore 2022-09-12 08:49:35 +05:30
.gitmodules Zerokit RLN integration in nwaku: alternative approach with inline compilation flag (#1060) 2022-08-05 22:58:19 +02:00
CHANGELOG.md docs: release v0.11 (#1075) 2022-08-15 15:46:17 +02:00
Dockerfile chore(docker): use NIMFLAGS instead of NIM_PARAMS (#961) 2022-05-17 21:11:07 +02: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 chore(Makefile): Make zerokit the default RLN implementation (#1190) 2022-10-05 11:50:24 +05:30
README.md docs: added bug reporting section to main readme (#912) 2022-03-28 14:17:50 +02:00
config.nims fix: building on Apple clang and M1 (#907) 2022-03-28 15:21:02 +02:00
env.sh Set up repo to make use of nimbus-build-system 2020-05-01 11:29:16 +02:00
shell.nix chore(Makefile): Make zerokit the default RLN implementation (#1190) 2022-10-05 11:50:24 +05:30
waku.nimble feat(rest): Add HTTP REST API (#727). Debug API POC 2022-06-14 18:20:15 +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.
  • 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.

Bugs, Questions & Features

For an inquiry, or if you would like to propose new features, feel free to open a general issue.

For bug reports, please tag your issue with the bug label.

If you believe the reported issue requires critical attention, please use the critical label to assist with triaging.

To get help, or participate in the conversation, join the Vac Discord server.