@matterlabs/hardhat-zksync-ethers
v1.3.0
Published
Hardhat plugin for integration with zksync-ethers library
Downloads
26,160
Maintainers
Readme
hardhat-zksync-ethers 🚀
ZKsync Era Hardhat plugin that is a wrapper around zksync-ethers sdk that gives additional methods to use for faster development.
📥 Installation
To install hardhat-zksync-ethers plugin, run:
npm install -D @matterlabs/hardhat-zksync-ethers
or
yarn add -D @matterlabs/hardhat-zksync-ethers zksync-ethers ethers
Helpers
| 🙏 Helper | 📄 Description | |-----------------------------------------------|---------------------------------------------------------------------------------------------------------------| | providerL2 | Retruns a Provider for L2 automatically connected to the selected network. | | providerL1 | Retruns a Provider for L1 automatically connected to the selected network. | | getWallet | Returns Wallet for the given private key or index. | | getContractFactory variant1 | Returns a ContractFactory for provided artifact name. | | getContractFactory variant2 | Returns a ContractFactory for provided artifact abi and bytecode. | | getContractFactoryFromArtifact | Returns a ContractFactory for provided artifact. | | getContractAt | Returns Contract for provided artifact name or abi and address of deployed contract. | | getContractAtFromArtifact | Returns ContractFactory for provided artifact and address of deployed contract | | getImpersonatedSigner | Impersonates Signer from address | | extractFactoryDeps | Extracts factory deps from artifact | | loadArtifact | Load ZkSyncArtifact from contract name | | deployContract | Deploys a contract to the network |
📖 Example
After installing it, add the plugin to your Hardhat config:
import "@matterlabs/hardhat-zksync-ethers";
This plugin extends hardhat runtime environment, use it like this:
Retrieve your contract factory:
const myContractFactory = await hre.zksyncEthers.getContractFactory("MyContract");
Deploy your contract:
const myContract = await myContractFactory.deploy("Hello, world!");
Find deployed address:
console.info(await myContract.getAddress());
📝 Documentation
In addition to the hardhat-zksync-ethers, ZKsync's Era website offers a variety of resources including:
Guides to get started: Learn how to start building on ZKsync Era.
Hardhat ZKsync Era plugins: Overview and guides for all Hardhat ZKsync Era plugins.
ZK Chains: Deep dive into the concept of ZK chains.
🤝 Contributing
Contributions are always welcome! Feel free to open any issue or send a pull request.
Go to CONTRIBUTING.md to learn about steps and best practices for contributing to ZKsync hardhat tooling base repository.
🙌 Feedback, help and news
ZKsync Era Discord server: for questions and feedback.
Follow ZKsync Era on Twitter