nwaku/README.md

72 lines
2.6 KiB
Markdown

# 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](https://specs.vac.dev/waku/waku.html).
- A Nim implementation of the [Waku v2 protocol](https://specs.vac.dev/specs/waku/v2/waku-v2.html).
- 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:
- [Waku v1](waku/v1/README.md)
- [Waku v2](waku/v2/README.md)
## 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](https://www.rust-lang.org/)
More information on the installation of these can be found [here](https://github.com/status-im/nimbus#prerequisites).
### Wakunode
```bash
# 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
```
For more on how to run `wakunode2`, refer to:
* [Run using binaries](https://github.com/waku-org/nwaku/blob/master/docs/operators/quickstart.md#option-1-run-nwaku-binary)
* [Run using docker](https://github.com/waku-org/nwaku/blob/master/docs/operators/quickstart.md#option-2-run-nwaku-in-a-docker-container)
* [Run using docker-compose](https://github.com/waku-org/nwaku/blob/master/docs/operators/quickstart.md#option-3-run-nwaku-with-docker-compose)
### Waku Protocol Test Suite
```bash
# 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.
### Tools
Different tools and their corresponding how-to guides can be found in the `tools` folder.
### Bugs, Questions & Features
For an inquiry, or if you would like to propose new features, feel free to [open a general issue](https://github.com/status-im/nim-waku/issues/new/).
For bug reports, please [tag your issue with the `bug` label](https://github.com/status-im/nim-waku/issues/new/).
If you believe the reported issue requires critical attention, please [use the `critical` label](https://github.com/status-im/nim-waku/issues/new?labels=critical,bug) to assist with triaging.
To get help, or participate in the conversation, join the [Vac Discord](https://discord.gg/KNj3ctuZvZ) server.