Technical Documentation

1.0 Smart Contract Deployment

WSHIDO Contract

Mainnet Deployed Address -> 0x8cbafFD9b658997E7bf87E98FEbF6EA6917166F7

  1. Contract from github repository: https://github.com/ShidoGlobal/wSHIDO

  2. Contract name: WSHIDO.sol

  3. Deployment Tool: Hardhat

  4. Deploying contract with the account: 0x15b0BCAF0C63539438b2AD4d631682857176088f

  5. Parameters:

    1. name: Wrapped Shido

    2. symbol: WSHIDO

    3. decimals: 18

    4. owner: 0x883433e911a045A5e67984c93961A495E48997D5

    1. Deployment Settings:

      1. {

        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"

    2. USDC_ADDRESS= "0x80b5a32E4F032B2a058b4F29EC95EEfEEB87aDcd"

  6. Deployment Tool: Hardhat

  7. Deploying contract with the account: 0x15b0BCAF0C63539438b2AD4d631682857176088f

  8. Parameters:

    1. owner: 0x883433e911a045A5e67984c93961A495E48997D5

  9. 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:

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:

  1. Included support for both Mainnet and Testnet

  2. Mainnet can be accessed with ChainId.SHIDO

  3. 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

3.2 Subgraph Deployment

Last updated