85d8156b7a
* use next.js tempalte * use next lint rules * alight UI * fix problem with margins * remove old page, rename to hooks * add constants * create RLN service, add utils * add RLN init * refactor a bit * add init for Keystore * add store functions * add styles * add contract hooks, add store fields, fix multiple downloads issue * add features * add keystore read logic * add import export * combine to useContract * add useWaku stub, add state to Waku block, styles * add creation of a node * add messages functionality * up readme * update CI * update readme * remove and rename, address comments * update readme * move const |
||
---|---|---|
.github | ||
.husky | ||
ci | ||
create-waku-app | ||
examples | ||
.eslintrc.json | ||
.gitignore | ||
LICENSE-APACHE-v2 | ||
LICENSE-MIT | ||
README.md | ||
index.html | ||
package-lock.json | ||
package.json |
README.md
Js-Waku Examples
Examples
Here is the list of the examples using js-waku
and the features they demonstrate:
See https://examples.waku.org/ for more examples.
Web Chat App
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 seamless integration of js-waku
into AngularJS.
- 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.
Waku Relay in ReactJS
A barebone chat app to illustrate the seamless integration of js-waku
into ReactJS.
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
- RLN:
- 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 retrieval of messages with js-waku
and ReactJS.
- 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
.