Skip to content

Instantly share code, notes, and snippets.

View naik899's full-sized avatar

Ravindra Naik naik899

View GitHub Profile
@naik899
naik899 / nightwatch.json
Created May 16, 2020 19:42
Experitest cloud Night Watch Json configuration
{
"src_folders" : ["./tests"],
"output_folder" : "./reports",
"test_workers": {
"enabled": true,
"workers": "auto"
},
"selenium" : {
"start_process" : false,
"server_path" : "",
import { storage, logging } from "near-sdk-as";
// --- contract code goes below
export function incrementCounter(value: i32): void {
const newCounter = storage.getPrimitive<i32>("counter", 0) + value;
storage.set<i32>("counter", newCounter);
logging.log("Counter is now: " + newCounter.toString());
}
const fetchTokens = createAsyncThunk(
${SLICE_NAME}/fetchTokens,
async ({ accountId }, thunkAPI) => {
const { dispatch, getState } = thunkAPI;
const likelyContracts = [...new Set([...(await FungibleTokens.getLikelyTokenContracts({ accountId })), ...WHITELISTED_CONTRACTS])];
await Promise.all(likelyContracts.map(async contractName => {
const { actions: { setContractMetadata } } = tokensSlice;
try {
@naik899
naik899 / ERC721.sol
Created January 8, 2022 10:12
ERC 721 Mint and Whitelist
// contracts/Leaf_NFT.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
contract LeafNft is ERC721, Ownable {
using Counters for Counters.Counter;
@naik899
naik899 / calendar.sol
Last active February 10, 2022 20:48
365daysOfWeb
// SPDX-License-Identifier: MIT
//tuple(uint256,string)[]: 0,https://gateway.pinata.cloud/ipfs/QmUM2jvm9Ya795JoQMMc652tZgPiygPwfPrUpDmqbN4d6K
//Floor Price: 1000000000000000000
pragma solidity ^0.8.4;
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
import "@openzeppelin/contracts/security/ReentrancyGuard.sol";
@naik899
naik899 / LazyMintingNFT.sol
Created February 27, 2022 04:04
Lazy minting contract
//SPDX-License-Identifier: Unlicense
pragma solidity ^0.8.0;
pragma experimental ABIEncoderV2;
import "hardhat/console.sol";
import "@openzeppelin/contracts/access/AccessControl.sol";
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
import "@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol";
@naik899
naik899 / marketplace.sol
Created March 11, 2022 19:44
Quark marketplace
pragma solidity ^0.8.0;
import "hardhat/console.sol";
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol";
contract NFTMarketplace {
@naik899
naik899 / Staking.sol
Created March 24, 2022 09:51
Spock Staking contract
pragma solidity ^0.8;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
contract StakingRewards {
IERC20 public rewardsToken;
IERC20 public stakingToken;
uint public rewardRate = 100;
uint public lastUpdateTime;
@naik899
naik899 / LazyMinter.js
Created February 27, 2022 04:03
Lazy minting
const ethers = require('ethers')
// These constants must match the ones used in the smart contract.
const SIGNING_DOMAIN_NAME = "QuarkNFT-Voucher"
const SIGNING_DOMAIN_VERSION = "1"
/**
* JSDoc typedefs.
*
* @typedef {object} NFTVoucher
@naik899
naik899 / SpockToken.sol
Last active June 15, 2022 09:42
Spock Token
// contracts/SpockToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract SpockToken is ERC20 {
address owner;
address multiSig;