1.0.0 • Published 3 months ago

@matterlabs/hardhat-zksync-ethers v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

hardhat-zksync-ethers 🚀

zkSync Era Hardhat plugin that is a wrapper around zksync-ethers sdk that gives additional methods to use for faster development.

Era Logo

📥 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
providerL2Retruns a Provider for L2 automatically connected to the selected network.
providerL1Retruns a Provider for L1 automatically connected to the selected network.
getWalletReturns Wallet for the given private key or index.
getContractFactory variant1Returns a ContractFactory for provided artifact name.
getContractFactory variant2Returns a ContractFactory for provided artifact abi and bytecode.
getContractFactoryFromArtifactReturns a ContractFactory for provided artifact.
getContractAtReturns Contract for provided artifact name or abi and address of deployed contract.
getContractAtFromArtifactReturns ContractFactory for provided artifact and address of deployed contract
getImpersonatedSignerImpersonates Signer from address
extractFactoryDepsExtracts factory deps from artifact
loadArtifactLoad ZkSyncArtifact from contract name
deployContractDeploys 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.\ Hyperscaling: Deep dive into hyperscaling on zkSync Era.

🤝 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

Happy building! 👷‍♀️👷‍♂️