Technical Documentation
1.0 Smart Contract Deployment
WSHIDO Contract
Mainnet Deployed Address -> 0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7
Contract from github repository: https://github.com/ShidoGlobal/wSHIDO
Contract name: WSHIDO.sol
Deployment Tool: Hardhat
Deployment Script: https://github.com/ShidoGlobal/wSHIDO/blob/main/scripts/deploy-mainnet.js
Deploying contract with the account: 0x15b0BCAF0C63539438b2AD4d631682857176088f
Parameters:
name: Wrapped Shido
symbol: WSHIDO
decimals: 18
owner: 0x883433e911a045A5e67984c93961A495E48997D5
Deployment Settings:
{
version: "0.8.23",
settings: {
viaIR: true,
optimizer: {
enabled: true,
runs: 200,
details: {
yulDetails: {
optimizerSteps: "u",
},
},
},
},
}
Core Contracts:// Mainnet Core contract address details
WSHIDO_ADDRESS= "0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7"
FACTORY_ADDRESS= "0xA17f1D96379d53B235587136F86880932c2b605F"
NFT_DESCRIPTOR_ADDRESS= "0x800B929A78EF2e037b6C81a5CF8e6447EAA2D41e"
POSITION_DESCRIPTOR_ADDRESS= "0xC3f4cAb9c4C453244E252b4D2a23E271eD778354"
POSITION_MANAGER_ADDRESS= "0xEdCf5C38BEc4EA10fb2d67d3Da03dd1f4086866F"
QUOTER_V2_ADDRESS= "0xFcCBDe0ffbaba6533787d1b930a06d1aca9e9727"
MULTI_CALL= "0xeD4c58BAEF3dd056345aF4affA05b085B50a8f67"
SWAP_ROUTER_V2= "0x1c5316BA88a99a5c35389053D987aFfa502bfa8f"
TICK_LENS= "0x5445bC8c3810c699048315085397cd0065c7fe41"
SWAP_ROUTER_ADDRESS= "0x66A24415FA3cC23CcdE402658454b0E12656c59b"
USDC_ADDRESS= "0x80b5a32E4F032B2a058b4F29EC95EEfEEB87aDcd"
Contract from github repository: https://github.com/ShidoGlobal/shido-liquidity-pool
Deployment Tool: Hardhat
Deploying contract with the account: 0x15b0BCAF0C63539438b2AD4d631682857176088f
Parameters:
owner: 0x883433e911a045A5e67984c93961A495E48997D5
Deployment Settings:
{
version: "0.8.23",
settings: {
optimizer: {
enabled: true,
runs: 2_000,
},
metadata: {
bytecodeHash: "none",
},
outputSelection: {
"*": {
"*": [
"abi",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"metadata",
],
"": ["ast"],
},
},
},
};
Logs
Execution 1:
npx hardhat run scripts/deploy-mainnet.js --network shido
Deploying contract with the account : 0x15b0BCAF0C63539438b2AD4d631682857176088f
Network name : shido
Network chain id : 9008n
WSHIDO Token Deployed : 0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7
Execution 2:
npx hardhat run --network shido scripts/deploy/coreContracts.js
Deploying contract with the account : 0x15b0BCAF0C63539438b2AD4d631682857176088f
Network name : unknown
Network chain id : 9008
Initial Balance before deployment : 9843.81990974674237294 SHIDO
####
Factory Deployed
0xA17f1D96379d53B235587136F86880932c2b605F
No args
Updated to ENV :true (FACTORY_ADDRESS,0xA17f1D96379d53B235587136F86880932c2b605F)
####
swapRouter Deployed
0x66A24415FA3cC23CcdE402658454b0E12656c59b
0xA17f1D96379d53B235587136F86880932c2b605F,0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7
Updated to ENV :true (SWAP_ROUTER_ADDRESS,0x66A24415FA3cC23CcdE402658454b0E12656c59b)
####
NFTDescriptor Deployed
0x800B929A78EF2e037b6C81a5CF8e6447EAA2D41e
No args
Updated to ENV :true (NFT_DESCRIPTOR_ADDRESS,0x800B929A78EF2e037b6C81a5CF8e6447EAA2D41e)
####
nonfungibleTokenPositionDescriptor Deployed
0xC3f4cAb9c4C453244E252b4D2a23E271eD778354
0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7,0x57534849444f0000000000000000000000000000000000000000000000000000
Updated to ENV :true (POSITION_DESCRIPTOR_ADDRESS,0xC3f4cAb9c4C453244E252b4D2a23E271eD778354)
####
nonfungiblePositionManager Deployed
0xEdCf5C38BEc4EA10fb2d67d3Da03dd1f4086866F
0xA17f1D96379d53B235587136F86880932c2b605F,0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7, 0xC3f4cAb9c4C453244E252b4D2a23E271eD778354
Updated to ENV :true (POSITION_MANAGER_ADDRESS,0xEdCf5C38BEc4EA10fb2d67d3Da03dd1f4086866F)
#### QuoterV2 Deployed
0xFcCBDe0ffbaba6533787d1b930a06d1aca9e9727
Updated to ENV :true (QUOTER_V2_ADDRESS,0xFcCBDe0ffbaba6533787d1b930a06d1aca9e9727)
#### UniswapInterfaceMulticall Deployed
0xeD4c58BAEF3dd056345aF4affA05b085B50a8f67
Updated to ENV :true (MULTI_CALL,0xeD4c58BAEF3dd056345aF4affA05b085B50a8f67)
#### TickLens Deployed
0x5445bC8c3810c699048315085397cd0065c7fe41
2.0 SDK Deployment
Published SDK details:
@shidoglobal/[email protected]
@shidoglobal/[email protected]
NPM Account: @shidoglobal
Github repository: https://github.com/ShidoGlobal/shido-liquidity-pool-core
Reference .MD files from here for deployment: https://github.com/ShidoGlobal/shido-liquidity-pool-core/sdk
Key Notes:
Included support for both Mainnet and Testnet
Mainnet can be accessed with ChainId.SHIDO
Testnet can be accessed with ChainId.SHIDO_TESTNET
3.0 Subgraph Deployment
This tracks all the blockchain events of DEX contracts and provides for the frontend through Subgraph Graphql Endpoints.
3.1 Running Graph Node from Server
Github repository: https://github.com/graphprotocol/graph-node
Deployment Server: https://app.cleavr.io/sites?server=001e70f5-a9ec-46db-8bdd-82dc311b5e2d
Deployment IP for Mainnet: 34.224.3.104
Refer this doc for script: https://github.com/ShidoGlobal/shido-liquidity-pool-core/subgraph/subgraph-node-setup/README.MD
3.2 Subgraph Deployment
Github repository: https://github.com/ShidoGlobal/shido-liquidity-pool-core/subgraph
Running or doing the deployment refer this: https://github.com/ShidoGlobal/shido-liquidity-pool-core/subgraph/v3-subgraph/README.md
Subgraph Deployed for Mainnet : https://ljd1t705przomdjt11587.cleavr.xyz/subgraphs/name/shido/mainnet
Last updated