Skip to content

Repository files navigation

KyberSwap Rewards KSDistributor

The KSDistributor, is a smart contract allowing the distribution of multiple ERC20 tokens through multiple campaigns, each with its own distribution schedule and Merkle tree. The design is heavily inspired by the Universal Rewards Distributor by Morpho Protocol. Compared to the URD, the KSD has the following differences:

  • Supports multiple campaigns, each with its own Merkle tree and distribution schedule.
  • Supports distributing rewards to NFTs' holders, not just to addresses.
  • Supports claiming rewards on behalf of another address.
  • Supports batch claiming of rewards.

Usage

Pre-requisites

Build

$ forge build

Test

$ forge test

Format

$ forge fmt

Gas Snapshots

$ forge snapshot

Deploy

$ forge create src/KSDistributor.sol:KSDistributor --rpc-url <your_rpc_url> --private-key <your_private_key>

Generate Merkle Tree

$ yarn ts-node script/generate-merkle-tree.ts

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages