Welcome to the Hardhat ERC20 Token project! This repository contains a fully-functional ERC20 token smart contract built using Hardhat, deployed to the Ethereum testnet. Perfect for learning, experimenting, and integrating your very own custom token! π
- π οΈ Hardhat for development: Compile, test, and deploy with ease.
- π° ERC20 Standard: Fully compliant token implementation.
- π§ͺ Test suite: Comprehensive tests to ensure your token works flawlessly.
- π Deploy to testnets: Ready to launch on Rinkeby, Goerli, and more!
- Clone the repo π
- Install dependencies π¦
- Deploy and test your token on the blockchain π
- πΌ Ideal for: Smart contract developers, blockchain enthusiasts, and those building decentralized applications (DApps)!
- git
- You'll know you did it right if you can run
git --version
and you see a response likegit version x.x.x
- You'll know you did it right if you can run
- Nodejs
- You'll know you've installed nodejs right if you can run:
node --version
and get an ouput likevx.x.x
- You'll know you've installed nodejs right if you can run:
- Yarn instead of
npm
- You'll know you've installed yarn right if you can run:
yarn --version
And get an output likex.x.x
- You might need to install it with npm
- You'll know you've installed yarn right if you can run:
git clone https://github.com/jopaleti/hardhat-erc20-token.git
cd hardhat-erc20-token
yarn
git checkout typescript
Deploy:
yarn hardhat deploy
- Setup environment variabltes
You'll want to set your SEPOLIA_RPC_URL
and PRIVATE_KEY
as environment variables. You can add them to a .env
file, similar to what you see in .env.example
.
PRIVATE_KEY
: The private key of your account (like from metamask). NOTE: FOR DEVELOPMENT, PLEASE USE A KEY THAT DOESN'T HAVE ANY REAL FUNDS ASSOCIATED WITH IT.- You can learn how to export it here.
SEPOLIA_RPC_URL
: This is url of the sepolia testnet node you're working with. You can get setup with one for free from Alchemy
- Get testnet ETH
Head over to faucets.chain.link and get some tesnet ETH. You should see the ETH show up in your metamask.
- Deploy
yarn hardhat deploy --network sepolia
If you deploy to a testnet or mainnet, you can verify it if you get an API Key from Etherscan and set it as an environemnt variable named ETHERSCAN_API_KEY
. You can pop it into your .env
file as seen in the .env.example
.
In it's current state, if you have your api key set, it will auto verify sepolia contracts!
However, you can manual verify with:
yarn hardhat verify --constructor-args arguments DEPLOYED_CONTRACT_ADDRESS
If you appreciated this, feel free to follow me!