Skip to content

feat: C bindings for Waku Relay #1632

Closed
@Ivansete-status

Description

Problem

nwaku can't be easily exported to other environments, such as NodeJS or Rust.

Suggested solution

Have nwaku C bindings so that a NodeJS user can easily start a Waku node in Relay mode.

Additional context

This is a first step of having a full operative Waku node in other platforms. For now we focus on the Waku Relay protocol.
We want to tackle the nwaku C-bindings option of: "use nwaku with NodeJS" - #1332
The final goal that we chase: "C-bindings for Kotlin, Rust, etc" - #904

Acceptance criteria

  • Have dynamic library (waku.so) for unix systems.
  • Have a static library (waku.a) for unix systems.
  • Have a C program that links nwaku libraries. That program should operate as a Relay node, allowing:
    • subscribe/unsubscribe from a PubSub topic.
    • send a message to a PubSub topic.
  • Have a npm package so that a "Waku Relay" node can be started from NodeJS.
  • Waku relay example in Python.
  • Waku relay example in Golang.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Labels

No labels
No labels

Type

No type

Projects

  • Status

    Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions