56 lines
1.3 KiB
TypeScript
56 lines
1.3 KiB
TypeScript
import { HardhatUserConfig } from "hardhat/config";
|
|
import "@nomicfoundation/hardhat-toolbox";
|
|
import * as dotenv from "dotenv";
|
|
|
|
dotenv.config();
|
|
|
|
const config: HardhatUserConfig = {
|
|
solidity: {
|
|
version: "0.8.20",
|
|
settings: {
|
|
optimizer: {
|
|
enabled: true,
|
|
runs: 200,
|
|
},
|
|
},
|
|
},
|
|
networks: {
|
|
hardhat: {
|
|
chainId: 1337,
|
|
},
|
|
localhost: {
|
|
url: "http://127.0.0.1:8545",
|
|
},
|
|
sepolia: {
|
|
url: process.env.SEPOLIA_RPC_URL || "",
|
|
accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
|
|
chainId: 11155111,
|
|
},
|
|
mainnet: {
|
|
url: process.env.MAINNET_RPC_URL || "",
|
|
accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
|
|
chainId: 1,
|
|
},
|
|
chain138: {
|
|
url: process.env.CHAIN138_RPC_URL || "http://192.168.11.250:8545",
|
|
accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
|
|
chainId: 138,
|
|
gasPrice: 0, // Chain 138 uses zero base fee
|
|
},
|
|
},
|
|
etherscan: {
|
|
apiKey: {
|
|
sepolia: process.env.ETHERSCAN_API_KEY || "",
|
|
mainnet: process.env.ETHERSCAN_API_KEY || "",
|
|
},
|
|
},
|
|
paths: {
|
|
sources: "./contracts",
|
|
tests: "./test",
|
|
cache: "./cache",
|
|
artifacts: "./artifacts",
|
|
},
|
|
};
|
|
|
|
export default config;
|