Coder Social home page Coder Social logo

blueberry-stakevest's Introduction

BlueberryStaking Smart Contract

This is the README file for the BlueberryStaking smart contract, which implements a staking mechanism with vesting for bdBLB token distribution. The contract allows users to stake specific tokens and earn rewards in the form of BLB tokens. It also provides vesting functionality for the distributed rewards.

Contract Details

  • Contract Name: BlueberryStaking

  • License: MIT

  • Solidity Version: ^0.8.0

  • Author: BlueberryProtocol

  • Description BlueberryStaking is a smart contract that facilitates the staking of tokens and the distribution of rewards in the form of BLB tokens. The contract supports multiple tokens that can be staked, and it includes vesting functionality for the distributed rewards. Users can stake tokens, earn rewards, unstake tokens, claim rewards, accelerate vesting, and complete vesting based on the rules defined in the contract.

The contract is implemented using OpenZeppelin library contracts, including IERC20, PausableUpgradeable, and Ownable2StepUpgradeable.

Features

The BlueberryStaking contract includes the following features:

  • Staking: Users can stake tokens by calling the stake function and providing the tokens and amounts they want to stake. The staked tokens are transferred to the contract.

  • Unstaking: Users can unstake tokens by calling the unstake function and providing the tokens and amounts they want to unstake. The unstaked tokens are transferred back to the user.

  • Rewards: Users can earn rewards by staking tokens. The rewards are calculated based on the staked tokens and the reward rate. Users can claim their rewards by calling the startVesting function.

  • Vesting: The contract includes vesting functionality for the distributed rewards. Users can complete vesting for specific vesting schedules by calling the completeVesting function. They can also accelerate vesting by paying an acceleration fee using the accelerateVesting function.

  • Management: The contract includes various management functions that can be called only by the contract owner. These functions allow the owner to change the reward rate, reward duration, vest length, add or remove supported tokens, change the BLB token address, pause or unpause the contract, and notify reward amounts.

blueberry-stakevest's People

Contributors

haruxe avatar 0xspraggins avatar gornutz avatar cuthalion0x avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.