Examples on how to use the js-waku library
Go to file
fryorcraken.eth 4f161be019
chore(store-reactjs-chat): bump dependencies
2022-11-21 10:42:10 +11:00
.github/workflows chore: remove dependabot 2022-11-21 10:16:45 +11:00
ci chore: remove CI for rln-react-ts 2022-10-28 13:00:29 +11:00
eth-pm chore(eth-pm): bump dependencies 2022-11-21 10:21:40 +11:00
light-js chore(light-js): bump @waku/* 2022-11-18 15:56:09 +11:00
relay-angular-chat chore(relay-angular-js): bump dependencies 2022-11-21 10:35:32 +11:00
relay-js chore(relay-js): bump @waku/* 2022-11-18 15:56:09 +11:00
relay-reactjs-chat chore(relay-reactjs-chat): bump dependencies 2022-11-21 10:38:02 +11:00
rln-js feat: instructions to get started with rln 2022-11-18 13:00:18 +11:00
store-js feat(store-js): only mount store protocol 2022-11-18 15:56:10 +11:00
store-reactjs-chat chore(store-reactjs-chat): bump dependencies 2022-11-21 10:42:10 +11:00
web-chat fix(web-chat): protons does not seem to always return a bigint 2022-11-18 15:56:10 +11:00
.cspell.json chore(eth-pm): bump js-waku to 0.29.0 2022-09-22 17:42:56 +10:00
.gitignore ci: add Jenkinsfile for GitHub pages builds 2022-09-07 09:02:15 +02:00
LICENSE-APACHE-v2 First commit 2022-06-17 10:48:15 +10:00
LICENSE-MIT First commit 2022-06-17 10:48:15 +10:00
README.md doc: update readme 2022-10-28 14:17:15 +11:00
package.json ci: add Jenkinsfile for GitHub pages builds 2022-09-07 09:02:15 +02:00
pnpm-lock.yaml ci: commit lock file 2022-09-26 13:56:37 +10:00

README.md

Js-Waku Examples

Examples

Here is the list of the examples using js-waku and the features they demonstrate:

See https://docs.wakuconnect.dev/docs/examples/ for more examples.

Web Chat App

  • code
  • website
  • Demonstrates: Group chat, React/TypeScript, Relay, Store.

Ethereum Private Messaging

End-to-end encrypted communication between two Ethereum addresses.

  • code
  • website
  • Demonstrates: Private Messaging, React/TypeScript, Light Client, Signature with Web3, Asymmetric Encryption.

Waku Light Client in JavaScript

Send messages between several users (or just one) using light client targetted protocols.

  • code
  • website
  • Demonstrates: Waku Light node: Filter + Light Push, Pure Javascript/HTML using ESM/unpkg bundle.

Minimal Angular (v13) Waku Relay

A barebone messaging app to illustrate the Angular Relay guide.

  • code
  • website
  • Demonstrates: Group messaging, Angular, Waku Relay, Protobuf using protobufjs, No async/await syntax.

Waku Relay in JavaScript

This example uses Waku Relay to send and receive simple text messages.

  • code
  • website
  • Demonstrates: Waku Relay, Pure Javascript/HTML using ESM/unpkg bundle.

Waku Relay in ReactJS

A barebone chat app to illustrate the ReactJS Relay guide.

  • code
  • website
  • Demonstrates: Group chat, React/JavaScript, Waku Relay, Protobuf using protobufjs.

Using RLN in JavaScript

Rate limiting nullifier (RLN) is a construct based on zero-knowledge proofs that provides an anonymous rate-limited signaling/messaging framework suitable for decentralized (and centralized) environments

Use RLN in the browser, compatible with nwaku chat2 and go-waku chat2 RLN implementations.

  • code
  • website
  • Demonstrates:
    • RLN:
      • Generate credentials
      • Insert membership to smart contract (Goerli testnet)
      • Retrieve smart contract state
      • Generate and send proofs
      • Verify incoming proofs
  • Pure Javascript/HTML using ESM/unpkg bundle.

Using Waku Store in JavaScript

This example uses Waku Store to retrieve the latest ping relay message (used for keep alive purposes) and displays its timestamp.

  • code
  • website
  • Demonstrates: Waku Store: Using a condition to stop retrieving results from Waku Store, Pure Javascript/HTML using ESM/unpkg bundle.

Minimal ReactJS Waku Store App

A simple app that retrieves chat messages using Waku Store to illustrate the Retrieve Messages Using Waku Store With ReactJS guide.

  • code
  • website
  • Demonstrates: React/JavaScript, Waku Store, Protobuf using protobufjs, no async/await syntax.

Continuous Integration

The master branch is being built by Jenkins CI: https://ci.infra.status.im/job/website/job/examples.waku.org/

Based on the ci/Jenkinsfile.