韓国で開催されるハッカソンに参加したい(韓国に行ってみたいだけw)のでAptosに入門していきます。
Petraというウォレットのインストール
https://aptos.dev/guides/install-petra-wallet-extension
Aptos CLIのダウンロード
https://aptos.dev/cli-tools/build-aptos-cli
このチュートリアルをやっていきます
https://aptos.dev/tutorials/your-first-transaction/
pnpm run transfer_coin のところで nodenv: version `v16.14.0' is not installed が出たのでnodenv install 16.14.0でインストール
再び実行するとトランザクションを起こせた
transfer_coin.tsのコードを読みます。Typescriptなので読める。少し安心。
続いてこちらのチュートリアル、NFTについて
https://aptos.dev/tutorials/your-first-nft
セットアップ部分はすでにやっているので飛ばしてStep3から
create collectionしたのちにcreate tokenしている。
EVMと同じ感じだろうか。
コレクションとトークンのデータはクリエイターのアカウントの中に保存されているらしい。ここはEVMとは概念が違うところ
欲しくないNFTを勝手に送りつけられないように、OfferとClaimという手順を踏む仕様にしているらしい。
一方的なトークンの送付は複数の署名を必要とするmultiagent transactionでならできるらしい
続いてこちらのYour first Dappに挑戦していきます。
https://aptos.dev/tutorials/your-first-dapp
STEP2まで進めるとこうなります。
Step4でMove moduleを公開しました
https://explorer.aptoslabs.com/account/....
Step5までやるとこうなりました。
Step6で少しつまづきました。
const resourceType =`${address}::message::MessageHolder`;
このアドレスの部分が、フロントで取得できる部分は0x0から始まるのに対して、getAccountResourcesで取れるデータ内では0xで始まるという事態が起きました。この部分は省略しました。ご存じの方いたら教えてください。
今回は主にフロントエンドの連携の方法がわかったので、次はMoveを本格的に触ってみようと思います。