A collection of metadata about 0x staking pools.
Addition to this repository is not a requirement to use the 0x Protocol. It's intended to make it easier for potential ZRX stakers to discover additional information about staking pools.
Option A. Clone this repo and import staking_pools.json
and pool_metadata.json
into your own project or
Option B. Get the latest version by fetching it directly from this repo
$ curl -i -H "Accept: application/json" https://api.github.com/repos/0xProject/0x-staking-pool-registry/contents/staking_pools.json?client_id={CLIENT_ID}&client_secret={CLIENT_SECRET}
$ curl -i -H "Accept: application/json" https://api.github.com/repos/0xProject/0x-staking-pool-registry/contents/pool_metadata.json?client_id={CLIENT_ID}&client_secret={CLIENT_SECRET}
To get metadata for a particular chain and pool ID (if it exists), you can do the following in Javascript. The example below grabs metadata for pool ID "1" on chain 42 (Kovan).
metadata = require('./pool_metadata.json');
pools = require('./staking_pools.json');
data = metadata[pools[42][1]];
- Clone this repository. Create a new branch called 'newpool/add_<your_pool_name>'.
- Add your logo image in a web-safe format (GIF, JPEG, or PNG) to the
logos
folder. - Install yarn and run
yarn install
- Generate a UUID for your relayer by running
yarn generate:uuid
. - Add an entry to
staking_pools.json
for each of your pools under the correct Chain ID. The outermost keys are Chain IDs, and the correct format for nested entries is "": uuid. - Add an entry to
pool_metadata.json
that complies with the metadata JSON schema inschemas.ts
- Run
yarn test
to verify that your entries pass schema validation. - Push your branch to the remote repo and open a PR.
- Add a transaction hash to the PR description verifying your ownership of the operator address. The transaction sender should be your operator address and the data field should have a hex-encoded message of the following format:
Pool <Pool ID> belongs to <Github username>
. MyEtherWallet has an interface to do so.
A sample submission:
In staking_pools.json
, add a mapping of your on-chain pool IDs to your generated UUID. The outermost numbers are chain IDs (1-mainnet ethereum, 3-Ropsten, etc.). In this example, "149d3c10-d7a4-49e4-90f2-527fd4f727f1" is pool 1 on all chains.
{
"1": {
"1": "149d3c10-d7a4-49e4-90f2-527fd4f727f1"
},
"3": {
"1": "149d3c10-d7a4-49e4-90f2-527fd4f727f1"
},
"4": {
"1": "149d3c10-d7a4-49e4-90f2-527fd4f727f1"
},
"42": {
"1": "149d3c10-d7a4-49e4-90f2-527fd4f727f1"
},
"1337": {
"1": "149d3c10-d7a4-49e4-90f2-527fd4f727f1"
}
}
In pool_metadata.json, add your generated UUID and metadata about your pool:
"149d3c10-d7a4-49e4-90f2-527fd4f727f1": {
"name": "Test Pool",
"bio": "All your stake are belong to us",
"verified": true,
"website_url": "http://0x.org",
"logo_img": "0x.png",
"location": "San Francisco, CA",
}