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
Pythonに漸進的に型をつける
nealle
1
120
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.6k
Catch Up: Go Style Guide Update
andpad
0
250
チームの境界をブチ抜いていけ
tokai235
0
220
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
260
モテるデスク環境
mozumasu
3
1.3k
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
270
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
100
SODA - FACT BOOK(JP)
sodainc
1
8.8k
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
190
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
200
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
3
730
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.3k
Building Applications with DynamoDB
mza
96
6.7k
What's in a price? How to price your products and services
michaelherold
246
12k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Practical Orchestrator
shlominoach
190
11k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
YesSQL, Process and Tooling at Scale
rocio
173
15k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The World Runs on Bad Software
bkeepers
PRO
72
11k
The Pragmatic Product Professional
lauravandoore
36
7k
Rails Girls Zürich Keynote
gr2m
95
14k
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