AlbertSu123 / dynamicstableswap-contracts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

saddle-contract

codecov CI

The smart contracts behind saddle.finance šŸ¤ 

The contracts are compiled with Hardhat, and tested using Waffle and TypeScript.

Installation

$ npm i

Deploy

yarn deploy --network evmos_testnet

Merge contract for verification

./node_modules/.bin/sol-merger contracts/helper/GenericERC20.sol merged/

Usage

Build

$ npm run build

Test

$ npm test

Coverage

$ npm run coverage

Deploying contracts to localhost Hardhat EVM

$ npm run start

You can connect to this RPC server via http://localhost:8545 with chain ID of 31337

Deploying contracts to local fork of Mainnet

In order to successfully fork the mainnet, ALCHEMY_API must be set to a valid URL in the .env file.

ALCHEMY_API="https://eth-mainnet.alchemyapi.io/v2/XXXXXXXXXXXX"
$ npm run fork

You can connect to this RPC server via http://localhost:8545 with chain ID of 1.

Deploying contracts to Ropsten

In order to successfully deploy to Ropsten, ALCHEMY_API_ROPSTEN must be set to a valid URL in the .env file. MNEMONIC_TEST_ACCOUNT must be set and the accounts must have some rEth for successful deployments.

ALCHEMY_API="https://eth-ropsten.alchemyapi.io/v2/XXXXXXXXXXXX"
MNEMONIC_TEST_ACCOUNT="seed phrase"

Generating GitBook docs

$ npx solidity-docgen --templates=templates

The output in the docs folder should be copied to the appropriate folder in the saddle-docs repo.

Running Slither

Slither is a Solidity static analysis framework. To run it locally:

$ pip3 install slither-analyzer
$ slither .

Slither is configured to run as a GitHub Action and error on any high findings.

About

License:MIT License


Languages

Language:Solidity 52.8%Language:TypeScript 46.6%Language:JavaScript 0.5%Language:Handlebars 0.1%Language:Dockerfile 0.0%Language:Shell 0.0%