Plugins
Plugins are the backbone of Hardhat, and they're built using the same config API that you use in your Hardhat configuration. Read the Building plugins guide to learn how to create your own, and send a pull request to get it listed here.
Extend Hardhat's functionality with the plugins below.
Official plugins
Nomic Foundation's recommended bundle of Hardhat plugins
Adds Ethereum-related matchers to Chai
Injects ethers.js into the Hardhat Runtime Environment
Automatically verify contracts on Etherscan
Easily run solhint to lint your Solidity code
Automatically run the solpp preprocessor before each compilation
Adds a Waffle-compatible provider to the Hardhat Runtime Environment and automatically initializes the Waffle Chai matchers
Injects Web3 1.x into the Hardhat Runtime Environment
Integration with TruffleContract from Truffle 5
Injects Web3 0.20.x into the Hardhat Runtime Environment
Integration with TruffleContract from Truffle 4
Community plugins
Sorted by npm downloadsGas usage per unit test. Average gas usage per method. A mocha reporter.
Hardhat plugin for deploying and managing upgradeable contracts.
Automatically export Solidity contract ABIs on compilation
The Solidity mocking library. Smock is a utility package that can generate mock Solidity contracts written entirely in JavaScript.
Easily integrate your Hardhat project with Tenderly. Tenderly is an Ethereum monitoring, debugging and analytics platform.
Zero-config Hardhat plugin to generate documentation for all your Solidity contracts.
See internal transactions, events and storage operations during your hardhat tests in the console
A plugin for integrating Starknet tools into Hardhat projects
Zero-config Hardhat plugin to check the output of the compiler for any problems like missing NatSpec
An hardhat plugin to pre-process contract source code before compilation
Remove Hardhat console.log imports and calls from Solidity source files
Generate a static documentation site from NatSpec comments
Compile Solidity sources directly from npm dependencies
Automatically prepend local Solidity source files with an SPDX License Identifier
Automatically deploy the ERC-1820 registry contract to Hardhat EVM chains.
Hardhat plugin to combine multiple ABIs into a Diamond ABI artifact
Helper plugin to manipulate blocks timestamp and trigger mining. It can be used from the command line and in the tests.
Integrate your Hardhat project and Hardhat network with Ethernal. Ethernal is a block explorer for private chains.
Hardhat plugin to deploy your smart contracts across multiple EVM chains with the same deterministic address.
Define your project's deployment in a simple manifest, then deploy and share it anywhere. Inspired by Docker, Terraform, and npm. https://usecannon.com/
Allow loading network configs for Hardhat projects in home file
A plugin to push contracts to tenderly
Prepare the contract artifacts and the TypeChain bindings for registry deployment.
Hardhat plugin for Unlock Protocol deployments.
Hardhat plugin to get compiler outputs of contracts
Automatically expose internal Solidity functions for testing
Automatically compiles your Solidity contracts with the OVM compiler.
Integrates Hardhat and ethers.js with Optimism's L2 network.
Hardhat plugin to automate the deployment and verification of contracts
Hardhat made awesome with a flexible CLI to help run tests, scripts, deploy Mock contracts and more.
This plugin brings the proxy contract to Hardhat, which allows you to manage the proxy contract in a simple way.
Provide tasks to integrate Circom and SnarkJS
Hardhat Reef plugin for interacting with contracts on the Reef chain
Execute commands on deployed contracts on any network using a helpful TUI.
Handy set of utilities for testing contracts in Hardhat projects
Develop your subgraph side by side with your contracts to save gas and increase productivity.
A Hardhat plugin for working with on-chain proposals
A Hardhat plugin that generates a React hook component from your smart contracts. Hot reloaded into your React app. Deployed or not deployed. And everything typed and initialized.
Check for storage layout changes
Simple plugin to track gas on the transaction level.
Hardhat React Plugin to interact with your deployed contracts
Hardhat plugin for writing tests in solidity
Upload local function selectors to the Ethereum Selector Database
Hardhat plugin to send an OSX notification when hardhat compilcation fails/succeeds
An updated and working Hardhat plugin to compile the Yul and Yul+ languages into solc compatible artifacts. Works with .yul and .yulp file extensions
Generate 0xWeb classes for contracts to easily communicate with the blockchain.
Overrides ENS ownership in hardhat network to allow orchestration superpowers
Hardhat plugin for solidity contract verification on Blockscout block explorer.
Hardhat plugin for Uniswap V3 deployment
Stop Hardhat test execution on demand and print output from completed tests
Export deployed contract addresses (multichain) in typescript files.
Quickly add security and operational alerting for your project using Forta: a decentralized monitoring network for Web3 systems.
Keeps mainnet fork state updated by replaying relevant live txs
A Hardhat Typescript plugin to test and interact with Huff contracts
Hardhat plugin for cloning verified contracts from any supported network using Etherscan's API.
Automatically export contract bytecode on compilation
A framework for building solidity CTF challenges.
Output list of available accounts and their balances
Generate and execute on-chain transactions via txn.xyz
A Hardhat plugin for integrating smart contracts with Georacle.
Hardhat TypeScript plugin to run a chainlink node and interact with it
This plugin allows you to upload compiled hardhat smart contract artifacts to Kriptonio. On kriptonio side new smart contract will be created with attached artifacts, which you can afterward deploy and manage via kriptonio.
Hardhat plugin to allow adding any extra data to your network configuration
Hardhat plugin to compile the Yul and Yul+ languages into solc compatible artifacts. Works with .yul and .yulp file extensions