0xPuddi / QD-LiquidStaking-Contracts

The Liquid Staking of QuarryDraw introduces a new ERC20: qdAVAX the QuarryDraw liquid staked AVAX. Quarry Draw adds the role of arbitrageurs within the logic.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Quarry Draw Liquid Staking Contracts

The Liquid Staking of QuarryDraw is an adaptation of BenQI's liquid staking, it introduces a new ERC20: qdAVAX the QuarryDraw liquid staked AVAX. Quarry Draw adds the role of arbitrageurs within the logic. It's role is to provide liquidity for people that are wating to exit their position from the liquid staking. The earlier they provide liquidity the bigger the discount they'll recieve on redeemed qdAVAX.

This project uses a gas-optimized reference implementation for EIP-2535 Diamonds. To learn more about this and other implementations go here: https://github.com/mudgen/diamond

This implementation uses Hardhat and Solidity 0.8.*

Installation

  1. Clone this repo:
git clone git@github.com:Puddi1/QD-LiquidStaking-Contracts.git
  1. Install NPM packages:
cd QD-LiquidStaking-Contracts
npm i

Compile

To compile the contracts in ./contract run:

npx hardhat compile

Their artifacts will be placed in ./artifacts/contracts

Tests

To run test, which are stored in ./test run:

npx hardhat test

Deployment

Deployments scripts are handled in ./scripts, to deploy:

npx hardhat run scripts/deploy.js

About

The Liquid Staking of QuarryDraw introduces a new ERC20: qdAVAX the QuarryDraw liquid staked AVAX. Quarry Draw adds the role of arbitrageurs within the logic.

License:MIT License


Languages

Language:Solidity 91.8%Language:JavaScript 8.2%