Py-Waku

Introduction

Py-Waku exposes a Waku module that can be used within Python projects. It is fundamentally a wrapper around nwaku

This repo has been tested with Python3 in Ubuntu.

If need a different setup, don't hesitate con contact us on Discord. The Discord server can be found at https://docs.waku.org/.

Prepare the development environment

Run the following commands from the root folder:

  1. mkdir venv
  2. python3 -m venv venv/
  3. source venv/bin/activate
  4. ./venv/bin/python -m pip install -r requiremets.txt

Create a Py-Waku package

Run the following commands from the root folder:

  1. source venv/bin/activate
  2. ./venv/bin/python3 -m build

Test the package

For that, we have a very simple example in tests/waku_example.py.

In order to use the waku module, please install it from the local dist/ folder, that can be created by following the instructions from the previous section.

The following command is an example on how to install the local package to your local virtual env.

./venv/bin/python3 -m pip install dist/waku-0.0.1-cp310-cp310-linux_x86_64.whl

Update the libwaku.so library

Given that Py-Waku conforms a wrapper around libwaku.so, it is likely that you would need to upgrade it. For that, you will need to update the submodule pointer to a more recent nwaku version:

  1. cd vendor/nwaku
  2. Check out to the commit/tag as you wish

Then, follow the following steps from the root folder to rebuild the libwaku.so library:

  1. cd vendor/nwaku
  2. make libwaku -j8
  3. cd ../../
  4. cp vendor/nwaku/build/libwaku.so lib/

Notice that the libwaku.so library is also distributed within the Py-Waku package.

Description
This is a Python wrapper around Waku
Readme
Languages
Python 91.5%
Shell 8.5%