Community Incentive Manager: Token and Reward Management
1.1 Community Incentive Manager Overview
1.2 Smart Contracts for Token and NFT Issuance
1.2.1 ERC-20 Token Contract for Reward Distribution
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract RewardToken is ERC20 {
address public admin;
constructor() ERC20("CommunityReward", "CRWD") {
admin = msg.sender;
_mint(admin, 1000000 * 10 ** decimals());
}
// Issue tokens to active community members
function issueReward(address to, uint256 amount) external {
require(msg.sender == admin, "Only admin can issue rewards");
_transfer(admin, to, amount);
}
}1.2.2 ERC-721 NFT Contract for Achievements
1.3 Interaction with Web3.js for Reward Issuance
1.3.1 Issuing ERC-20 Tokens
1.3.2 Minting an Achievement NFT
Last updated
