LoginSignup
1
0

More than 1 year has passed since last update.

hardhatで開発する上で知っておいた方がいいライブラリ

Posted at

概要

hardhatで開発する上で事前に目を通した方がいい内容をまとめてみました。
もしよければ参考にしてみてください

hardhat-ethers

コントラクトをデプロイする際に使用します。

デプロイ例

const MyContractFactory = await hre.ethers.getContractFactory("MyContract");
const myContract = await MyContract.deploy();
const portal = await myContract.deployed()

公式ドキュメント: https://hardhat.org/hardhat-runner/plugins/nomiclabs-hardhat-ethers#hardhat-ethers

nomiclabs/hardhat-waffle

コントラクトのテストをする際に使用するパッケージです。
公式ドキュメント: https://getwaffle.io/

OpenZeppelin

solidityで安全なスマートコントラクトの実装を提供するライブラリです。
開発者は独自のスマートコントラクトを構築する際に、既存の検証済みのコンポーネントを使用できます。ERC20、ERC721、アクセス制御など、多くの既存の機能があります。

有名なものだと、ownable あたりが有名だと思います。
下記コードは、オーナーのみしか実行できないようにする機能を実装したものです。

import "@openzeppelin/contracts/access/Ownable.sol";

contract MyContract is Ownable {
    uint256 private _data;

    // オーナーのみが実行可能な関数
    function setData(uint256 newData) public onlyOwner {
        _data = newData;
    }
    // 誰でも実行可能
    function getData() public view returns (uint256) {
        return _data;
    }
}

公式ドキュメント: https://docs.openzeppelin.com/

参考になるコードや、パッケージは追加で知ったらこの記事に追加予定です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0