Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ethers.jsでDAppの開発入門
Search
Shunp
October 12, 2021
Programming
2
180
Ethers.jsでDAppの開発入門
FukuokaJSというコミュニティでLT登壇させてもらった時の資料です。
ブロックチェーン初心者向けです!JSの話少なめ。。。
登壇楽しかったです、ありがとうございました!!
Shunp
October 12, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
5.8k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
2k
flutter_kaigi_2025.pdf
kyoheig3
1
360
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
0
130
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
0
490
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
580
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
110
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
480
高単価案件で働くための心構え
nullnull
0
160
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
600
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
100
乱雑なコードの整理から学ぶ設計の初歩
masuda220
PRO
32
14k
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
940
Designing for humans not robots
tammielis
254
26k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Faster Mobile Websites
deanohume
310
31k
Raft: Consensus for Rubyists
vanstee
140
7.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Speed Design
sergeychernyshev
33
1.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
The Language of Interfaces
destraynor
162
25k
Transcript
2021/10/12 Shunpei Ito Ethers.jsͰDAppͷ։ൃೖ ˌ14 FukuokaJS
ࠓͷྲྀΕ ࣗݾհ DAppͬͯԿʁ Ethers.jsʹ͍ͭͯ Metamaskͱܨ͙ NFTΛൃߦͯ͠ΈΑ͏ʂ
ࣗݾհ Introduction
ࣗݾհ Shumpei Ito 1996ੜ·Ε झຯόεέɺαʔϑΟϯ ւ֎ཱྀߦʹ݁ߏߦͬͯͨ ॳΊͯϓϩάϥϛϯάΛ৮ͬͯ͏͙͢1 @shunpg0305
ࣗݾհ Ӧۀ̍ IT෦̍ ݄̐ʙΤϯδχΞ
DAppͬͯԿʁ What is Dapp?
DApp (Decentralized Application) ࢄܕΞϓϦέʔγϣϯ (DApp) Blockchain ී௨ͷΞϓϦέʔγϣϯ (தԝूݖܕ App) αʔόʔ
௨ৗͷΞϓϦͱԿ͕ҧ͏ͷ͔ʁ ɾࢄཧʹΑͬͯৗʹՔಇ͠ଓ͚ΒΕΔ ɾใ͕վ͟Μ͞ΕΔϦεΫ͕େ͖ܰ͘ݮ͞ΕΔ ɾҰσϓϩΠ͞ΕΔͱίʔυΛมߋͰ͖ͣɺ ɹΞοϓσʔτʹϢʔβͷ߹ҙΛͱͬͨΓ͢Δ < ͜Μͳ՝͋Δ > ɾτϥϯβΫγϣϯ͕͔ͬͨΓ ɾར༻खྉ͕ߴಅ͍ͯͨ͠Γ
DAppͷ׆༻ࣄྫ ϒϩοΫνΣʔϯήʔϜ - Crypto Kitties ೣΛചങɺަ͚ͯࣗͩ͠ͷೣ(NFT) ΛूΊΔҭܥήʔϜ ଞͷήʔϜʹ͜ͷೣNFT͕͑ͨΓ
ࠓճͷDAppͷߏ ΫϥΠΞϯτଆ ϒϩοΫνΣʔϯଆ
Ethers.jsʹ͍ͭͯ About Ethers.js
Ethers.js EthereumϒϩοΫνΣʔϯͷσʔλΛૢ࡞͢ΔͨΊͷϥΠϒϥϦ Ethers.jsͰग़དྷΔ͜ͱ ɾൿີ伴ΛΫϥΠΞϯτʹ҆શʹอ ɾχʔϞχοΫ (จࣈྻ͔Βൿີ伴Λ࡞) ɾίϯτϥΫτABI͔ΒJSͷΦϒδΣΫτΛ࡞ ɾTypeScriptʹશରԠ ͳͲͳͲ ɹࣅͨΑ͏ͳϥΠϒϥϦͰweb3.js͕͋Δ
Ethers.js ࠓճEthersͰ࡞ͬͨWalletͰͳ͘ɺMetamaskΛ༻͠·͢ʂ Ethers.jsͰWalletΛ࡞ΕΔ
Metamaskͱܨ͙ Connecting with Metamask
Metamask • ϒϩοΫνΣʔϯήʔϜͱ͔NFTϚʔέοτͰ͑Δ • ෳͷΞΧϯτ͕Ͱ͖ͨΓ • τʔΫϯΛૹ৴ͨ͠Γ • खྉΛࣗ༝ʹઃఆͰ͖ͨΓ͢Δ Google
ExtensionͰΠϯετʔϧͰ͖Δ εϚϗΞϓϦ͋Δ
ܨ͍ͰΈΔ
NFTΛൃߦͯ͠ΈΑ͏ʂ Issue Non Fungible Token
NFTΛൃߦͯ͠ΈΑ͏ʂ ূ໌ॻͷNFTൃߦΞϓϦ ൃߦϘλϯΛԡ͢ͱ
Contract (Solidity) ͜ͷίϯτϥΫτΛ EthereumͷϒϩοΫνΣʔϯʹ σϓϩΠ͢Δʂ σϓϩΠ͢Δࡍʹ Ψε(ETH)ඞཁʂ
Contractͷ͍ํ ίϯτϥΫτͷػೳΛ͏ͨΊͷ४උ
Contractͷ͍ํ ίϯτϥΫτͷΠϯελϯεΛੜ͢Δ͜ͱʹΑΓ ίϯτϥΫτͷؔΛ͏͜ͱ͕Ͱ͖Δ
ൃߦͨ͠NFTΛ֬ೝ
JSͰϒϩοΫνΣʔϯΛ͓͏ʂ
ΤϯδχΞืूͯ͠·͢ʂ
None