These are the hardhat configs:
require("@nomiclabs/hardhat-waffle");
require("@nomiclabs/hardhat-etherscan");
require("hardhat-deploy");
require("solidity-coverage");
require("hardhat-gas-reporter");
require("hardhat-contract-sizer");
require("dotenv").config();
/** @type import('hardhat/config').HardhatUserConfig */
const RINKEBY_RPC_URL = process.env.RINKEBY_RPC_URL;
const PRIVATE_KEY = process.env.PRIVATE_KEY;
const COINMARKETCAP_API_KEY = process.env.COINMARKETCAP_API_KEY;
const ETHERSCAN_API_KEY = process.env.ETHERSCAN_API_KEY;
const MAINNET_PRC_URL = process.env.MAINNET_PRC_URL;
module.exports = {
solidity: "0.8.7",
networks: {
hardhat: {
chainId: 31337,
forking: {
url: MAINNET_PRC_URL,
},
blockConfirmations: 6,
},
rinkeby: {
url: RINKEBY_RPC_URL,
accounts: [PRIVATE_KEY],
chainId: 4,
//wait upto 6 blocks for the transaction to be mined
blockConfirmations: 6,
},
},
solidity: {
compilers: [
{
version: "0.8.7",
},
{
version: "0.8.8",
},
{
version: "0.6.6",
},
{
version: "0.6.12",
},
{
version: "0.6.0",
},
{
version: "0.4.19",
},
],
},
gasReporter: {
enabled: false,
outputFile: "gas-reporter.txt",
noColors: true,
currency: "USD",
coinmarketcap: COINMARKETCAP_API_KEY,
token: "MATIC",
},
etherscan: {
apiKey: ETHERSCAN_API_KEY,
},
namedAccounts: {
deployer: {
default: 0, // first account is the default one from all the hardhat accounts
// 1: 0, // same on othe mainnet , first one is default
},
player: {
default: 1,
},
},
mocha: {
timeout: 300000,
},
};
This is the helper-hardhat-config.js
const networkConfig = {
default: {
name: "hardhat",
keepersUpdateInterval: "30",
subscriptionId: "588",
gasLane:
"0xd89b2bf150e3b9e13446986e571fb9cab24b13cea0a43ea20a6049a85cc807cc",
interval: "30",
raffleEntranceFee: "10000000000000000",
callbackGasLimit: "500000",
},
31337: {
name: "localhost",
ethUsdPriceFeed: "0x9326BFA02ADD2366b30bacB125260Af641031331",
subscriptionId: "588",
gasLane:
"0xd89b2bf150e3b9e13446986e571fb9cab24b13cea0a43ea20a6049a85cc807cc", // 30 gwei
interval: "30",
raffleEntranceFee: "10000000000000000",
mintFee: "10000000000000000", // 0.01 ETH
callbackGasLimit: "500000", // 500,000 gas
},
};
const DECIMALS = "18";
const INITIAL_PRICE = "200000000000000000000";
const VERIFICATION_BLOCK_CONFIRMATIONS = 6;
const developmentChains = ["hardhat", "localhost"];
const frontEndContractsFile =
"../hardhat-nft-marketplace-nextjs/constants/networkMapping.json";
const frontEndAbiLocation = "../hardhat-nft-marketplace-nextjs/constants/";
module.exports = {
VERIFICATION_BLOCK_CONFIRMATIONS,
frontEndContractsFile,
frontEndAbiLocation,
networkConfig,
developmentChains,
DECIMALS,
INITIAL_PRICE,
};