black-wyvern-dev/wwv-nft-staking

WWV-NFT-Staking with Rarity

Multiple Factor Rewards Staking program for WildWestVerse NFT collections

Install Dependencies

  • Install node and yarn
  • Install ts-node as global command
  • Confirm the solana wallet preparation: /home/fury/.config/solana/id.json in test case

Usage

  • Main script source for all functionality is here: /cli/script.ts
  • Program account types are declared here: /cli/types.ts
  • Idl to make the JS binding easy is here: /cli/staking_program.json

Able to test the script functions working in this way.

  • Change commands properly in the main functions of the script.ts file to call the other functions
  • Confirm the ANCHOR_WALLET environment variable of the ts-node script in package.json
  • Run yarn ts-node

Features

As a Smart Contract Owner

For the first time use, the Smart Contract Owner should initialize the Smart Contract for global account allocation.

  • initProject

Recall initialize function for update the Threshold values after change the constants properly

  • initProject

Maintain the Reward token($WWV) vault's balance

  • REWARD_TOKEN_MINT is the reward token mint (for test).
  • rewardVault is the reward token account for owner. The owner should have the token's Mint Authority or should Fund regularly.

This is current test value. Should be revised properly.

  • EPOCH = 60 // A day

  • REWARD_PER_DAY = 100_000_000 // 0.1 $WWV According to the rank of NFTs, there reward amount will be changed automatically following the below logic.

  • RANK /DAILY PRIZE

  • 1500-2000 /1$WWV

  • 1000-1499 /1.5$WWV

  • 600-999 /2$WWV

  • 300-599 /2.5$WWV

  • 200-299 /3$WWV

  • 51-199 /4$WWV

  • 1-50 /5$WWV

As a NFT Holder

Stake Shred Collection NFTs with NFT mint address and a boolean parameter weather the NFT is Legendary NFT.

  • stakeNft

As a Staker

Unstake their staked NFTs with mint address and get rewards. ( Calculate generated reward by this NFT too )

  • withdrawNft

Claim reward to receive generated $WWV from their staking.

  • claimReward

Information - Updated Sep 14, 2022

Stars: 1
Forks: 1
Issues: 0

Wiremock reimplemented in Rust

A wiremock json testing system for HTTP requests

Wiremock reimplemented in Rust
JSON

591

JSON parser which picks up values directly without performing tokenization in Rust

This JSON parser is implemented based on an abstract that utilizes in memory indexing and parsing

JSON parser which picks up values directly without performing tokenization in Rust

JSON-E Rust data-struct paramter crate for lightweight embedded content with objects and much more

What makes JSON-e unique is that it extensive documentation and ease of use

JSON-E Rust data-struct paramter crate for lightweight embedded content with objects and much more

JSON-RPC library designed for async/await in Rust

Designed to be the successor to tracking issue for next stable release (0

JSON-RPC library designed for async/await in Rust

markdown-test-report

Converts cargo test results from JSON to Markdown

markdown-test-report
JSON

140

json_typegen - Rust types from JSON samples

json_typegen is a collection of tools for generating types from

json_typegen - Rust types from JSON samples

JSON File Parser

A CLI application that reads from a stream of JSON files, and computes some data-quality metrics

JSON File Parser

JSON Compilation Database

This crate provides support for reading and writing JSON compilation database files

JSON Compilation Database

json parser for python written using rust

This was a simple test project and the parsing is done without a proper lexer

json parser for python written using rust
Facebook Instagram Twitter GitHub Dribbble
Privacy