# RavJS

Javascript client library to retrieve and calculate operations

## Setup

### Clone

```
git clone https://github.com/ravenprotocol/ravjs.git
```

### Configure

* In `ravjs/raven.js` file update the `CID` variable to a unique string before opening a new client.

  const cid = "\<unique\_client\_id>"
* Point RAVSOCK\_SERVER\_URL to ravsock. It can be your local ravsock running on your local device.

  const RAVSOCK\_SERVER\_URL = "localhost" // local ravsock server or const RAVSOCK\_SERVER\_URL = "\<ravsock\_server\_url>" //remote ravsock server

### Start

* Open `worker.html` in a new browser tab to connect to ravsock
* Once connected, click on `Participate` button. This triggers the execution of a local client benchmarking code and returns its results to the server. The server utilizes this data for optimizing the scheduling algorithm.

The client will now dynamically receive groups of Ops from the server, compute them and return the results back to the server.
