doc: update readme
This commit is contained in:
parent
cc579bf338
commit
c546f0e113
97
README.md
97
README.md
|
@ -1,22 +1,93 @@
|
|||
# Js-Waku Examples
|
||||
|
||||
## Examples
|
||||
|
||||
Here is the list of the examples using [`js-waku`](https://www.npmjs.com/package/js-waku) and the features they demonstrate:
|
||||
|
||||
- [Web Chat App](web-chat): Group chat, React/TypeScript, Relay, Store.
|
||||
- [Ethereum Private Message Web App](eth-pm): Private Messaging, React/TypeScript, Light Push, Signature with Web3, Asymmetric Encryption.
|
||||
- [Minimal ReactJS Waku Relay App](relay-reactjs-chat):
|
||||
Group chat,
|
||||
React/JavaScript,
|
||||
`create-react-app`/`react-scripts` 5.0.0,
|
||||
Waku Relay
|
||||
Protobuf using `protons`,
|
||||
No async/await syntax.
|
||||
- [Minimal ReactJS Waku Store App](store-reactjs-chat): Waku Store, React/JavaScript, Protobuf using `protons`.
|
||||
- [Using Waku Store in JavaScript](store-js): Stop retrieving results from Waku Store on condition, Use minified bundle from Unpkg.com, JavaScript.
|
||||
- [Using Waku Relay in JavaScript](relay-js): Receive and send text messages with Waku Relay, Use minified bundle from Unpkg.com, JavaScript.
|
||||
|
||||
See https://docs.wakuconnect.dev/docs/examples/ for more examples.
|
||||
|
||||
### Web Chat App
|
||||
|
||||
- [code](web-chat)
|
||||
- [website](https://examples.waku.org/web-chat)
|
||||
- Demonstrates: Group chat, React/TypeScript, Relay, Store.
|
||||
|
||||
### Ethereum Private Messaging
|
||||
|
||||
End-to-end encrypted communication between two Ethereum addresses.
|
||||
|
||||
- [code](eth-pm)
|
||||
- [website](https://examples.waku.org/eth-pm)
|
||||
- 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](light-js)
|
||||
- [website](https://examples.waku.org/light-js)
|
||||
- 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](https://docs.wakuconnect.dev/docs/guides/10_angular_relay/).
|
||||
|
||||
- [code](relay-angular-chat)
|
||||
- [website](https://examples.waku.org/relay-angular-chat)
|
||||
- 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](relay-js)
|
||||
- [website](https://examples.waku.org/relay-js)
|
||||
- Demonstrates: Waku Relay, Pure Javascript/HTML using ESM/unpkg bundle.
|
||||
|
||||
### Waku Relay in ReactJS
|
||||
|
||||
A barebone chat app to illustrate the [ReactJS Relay guide](https://docs.wakuconnect.dev/docs/guides/07_reactjs_relay/).
|
||||
|
||||
- [code](relay-reactjs-chat)
|
||||
- [website](https://examples.waku.org/relay-reactjs-chat)
|
||||
- Demonstrates: Group chat, React/JavaScript, Waku Relay, Protobuf using `protobufjs`.
|
||||
|
||||
### Using [RLN](https://rfc.vac.dev/spec/32/) 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](rln-js)
|
||||
- [website](https://examples.waku.org/rln-js)
|
||||
- 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](store-js)
|
||||
- [website](https://examples.waku.org/store-js)
|
||||
- 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](https://rfc.vac.dev/spec/13/)
|
||||
to illustrate the [Retrieve Messages Using Waku Store With ReactJS guide](https://docs.wakuconnect.dev/docs/guides/08_reactjs_store/).
|
||||
|
||||
- [code](store-reactjs-chat)
|
||||
- [website](https://examples.waku.org/store-reactjs-chat)
|
||||
- Demonstrates: React/JavaScript, Waku Store, Protobuf using `protobufjs`, no async/await syntax.
|
||||
|
||||
# Continuous Integration
|
||||
|
||||
The `master` branch is being built by Jenkins CI:
|
||||
|
|
|
@ -1,8 +1,17 @@
|
|||
# Using RLN in JavaScript
|
||||
# Using [RLN](https://rfc.vac.dev/spec/32/) 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
|
||||
|
||||
**Demonstrates**:
|
||||
|
||||
- RLN: Generate proof
|
||||
- RLN:
|
||||
- Generate credentials
|
||||
- Insert membership to smart contract (Goerli testnet)
|
||||
- Retrieve smart contract state
|
||||
- Generate and send proofs
|
||||
- Verify incoming proofs
|
||||
- Pure Javascript/HTML.
|
||||
- Use minified bundle of js from unpkg.com, no import, no package manager.
|
||||
|
||||
|
|
Loading…
Reference in New Issue