This project will take you through a number of scenarios using the 0x v4 protocol.
This repository contains a bunch of scenarios that you can run from the command-line:
- Fill a 0x API quote
- Fill ERC20 limit order
- Cancel pair limit orders
- Fill ERC20 RFQ order
- Fill ERC20 RFQ order with a maker order signer
- Subscribe to RFQ order fill events
- Execute Metatransaction
- Fill ERC20 OTC order
- Fill taker-signed ERC20 OTC order
- (Advanced) Fill an aggregated quote via TransformERC20
- Create a staking pool
By default this project uses the 0x development mnemonic running against Ganache. This project can be configured to use a different mnenonic and also run against Kovan testnet.
You may choose to update the mnemonic in src/configs.ts
or use the one provided (note if many people use this mnemonic on Kovan then the funds may be drained). When changing the mnemonic ensure that the account has available funds (ETH and ZRX) on the respective network. You can request ZRX and ETH from the 0x Faucet located in 0x Portal.
Install dependencies:
yarn install
Build this package:
yarn build
Run a scenario in another terminal:
yarn scenario:fill_erc20_limit_order
To run all scenarios:
yarn scenario:all
All the scenarios commands can be found in the package.json
's scripts
section and begin with scenario:
.
To switch between Kovan/ganache, change the last line in src/configs.ts
and re-build. Ganache is enabled by default.
For Ganache:
export const NETWORK_CONFIGS = GANACHE_CONFIGS;
For Kovan:
export const NETWORK_CONFIGS = KOVAN_CONFIGS;
If you're setting up Node.js for the first time on Windows, you may find the following StackOverflow guide useful. There are a few build tools required for Node.js on Windows which are not installed by default (such as Python). Please follow that guide before running through the tutorials.