ブロックチェーン集中講座

第2,3回

DAOサンプルアプリケーション

https://github.com/VirtualWallC/YourDAO

Text

DAOとは

「DAO( Decentralized Autonomous Organization)は、スマートコントラクトを通じて、ブロックチェーン上で運営される分散型の組織やコミュニティです。 DAOの運営は、一般的にはスマートコントラクトによって行われ、そのルールやポリシーは DAOの参加者たちが共同で決定します。スマートコントラクトは、実行したい処理やガバナンスのルール、ポリシーをプログラムで定義し、自動的に実行することができるため、従来の中央集権的な組織構造の欠点を克服できます。

原則

1. 分散ガバナンス

2.トークンベースの投票と報酬

3. 透明性・不変性

技術要素(スマートコントラクト、トークン規格、ガバナンストークン、投票機能)

フレームワークやツール1

https://app.aragon.org/

https://docs.openzeppelin.com/contracts/4.x/api/governance

フレームワークやツール2

https://wizard.openzeppelin.com/#governor

https://docs.tally.xyz/

DAOサンプルアプリケーション

https://github.com/VirtualWallC/YourDAO

git clone git@github.com:VirtualWallC/YourDAO.git

README参照
https://github.com/VirtualWallC/YourDAO?tab=readme-ov-file#yourdao

hardhatのローカルノードチェーンとmetamaskの接続

カスタムネットワーク追加(localの際のチェーンIDは書籍では31337と記載あるのですが、以下のissueから1337に指定しています)

https://github.com/MetaMask/metamask-extension/issues/10290

https://hardhat.org/hardhat-network/docs/metamask-issue

ネットワーク名:任意の名前
RPC URL:http://localhost:22100
チェーンID:1337
通貨記号:任意(ETH)
エクスプローラー:空

hardhatのローカルノードチェーンとmetamaskの接続

(アカウントインポート)

フロントエンド立ち上げの手順完了して、

http://localhost:23100にアクセスする. 右上のconnectに前ページで設定したmetamaskのアカウントで接続する。

補足

EthreumのPublicテストネットワーク(Sepolia)へのデプロイ

 

 

cp -p hardhat/.env.sepolia hardhat/.env

1. .envのAPI_URLの値はalchemyからトークン付きのSepoliaURLを貼り付ける

2. PRIVATE_KEYはmetamaskでSepoliaネットワークで接続中の状態で
アカウントを作成したアカウントアドレス(HardhatのPrivateキーで作成したものでない事に注意)
※2の秘密鍵で生成されているアカウントアドレスでSepolia Ethトークンを、
faucetなどから事前にSepolia Ethトークンを取得しておくこと(デプロイやトランザクション作成時に使うため)

3.上記1,2準備ができたら、make hardhat-sepolia-deploy、でSepoliaネットワークにデプロイする

その他参考:
https://docs.alchemy.com/docs/how-to-deploy-a-smart-contract-to-the-sepolia-testnet

EthreumのPublicテストネットワーク(Sepoia)へのデプロイ後、

デプロイしたコントラクトアドレスをfrontendの各所に貼り付けて起動する。アクセス先はhttp://localhost:23100で同じだが、右上のconnectに接続する際は、Sepoiaテストネットワークに接続しているmetamaskのアカウントでconnectする。あとは使い方は同じ

 

 

EthreumのPublicテストネットワーク(Sepolia)にmetamaskで接続

https://www.alchemy.com/overviews/how-to-add-sepolia-to-metamask

 

faucet

https://docs.metamask.io/developer-tools/faucet/

テストネット(Sepolia Testnet Explorer)

https://sepolia.etherscan.io/

faucetから受領したテストネットのEthを確認する

Tendermint

https://tendermint.com/

個人的におすすめ書籍

 

概念

実践

ドキュメント読みつつ手を動かして一通り学べる

FREE ! alchemy[university]
https://university.alchemy.com/

ゲーム感覚で手を動かして一通り学べる

https://cryptozombies.io/jp/

Copy of Copy of smart contract

By Akira Tamai

Copy of Copy of smart contract

  • 54