Uniswap 是以太坊最为流行的去中心化交易所,它的代码完全开源,本文将以 uniswap v2 版本为例,讲解如何将 uniswap v2 智能合约部署到以太坊 goerli 测试网络,并且搭建前端进行操作。uniswap-v2 版本智能合约部分的代码存放在 uniswap-v2-core 和 uniswap-v2-periphery 两个仓库,编译智能合约需要 node@>=10 版本。
首先安装 nodejs,并指定版本 node@>=10:
sudo apt update -y
sudo apt install curl git npm -y
sudo npm install -g n yarn -y
sudo n 10 && PATH="$PATH"
然后将 clone 两个智能合约的代码仓库到本地:
git clone https://github.com/Uniswap/uniswap-v2-core.git
git clone https://github.com/Uniswap/uniswap-v2-periphery.git
以及 clone uniswap-interface 前端仓库,把 tag 切换到 v2.6.5,因为后续的版本推出了 UNI 代币和治理功能,这里不进行部署。
git clone https://github.com/Uniswap/uniswap-interface.git
cd uniswap-interface && git checkout v2.6.5
我们还需要准备一个开放了 JSON RPC API 的以太坊节点,嫌麻烦可以去 https://infura.io 申请一个免费的 API Key。以及一个拥有足够 ETH 余额的以太坊地址,goerli 测试网络可以打开 https://faucet.goerli.mudit.blog 水龙头为你的地址获取测试的 ETH 代币。