Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
最近のweb3.js事情 / bc.tokyo-19
Search
odanado
May 24, 2019
Programming
580
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
最近のweb3.js事情 / bc.tokyo-19
odanado
May 24, 2019
More Decks by odanado
See All by odanado
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
3
5.8k
@nestjs/bull の活用について
odanado
0
1.6k
クラウド KMS の活用 / TOKYO BLOCKCHAIN TECH MEETUP 2022
odanado
0
1.4k
Vue.observable で状態管理 / vue-observable-state-management
odanado
4
2.2k
nuxtjs-axios-error-handling
odanado
0
430
ブロックチェーンアプリのトランザクションに対するデータ分析 / PyCon-JP-2019
odanado
0
470
スマートコントラクトに対する既知の攻撃とその対策 / bc.tokyo-21
odanado
0
300
YAPC::Tokyo 2019に スタッフ参加してみて / kichijojipm-18
odanado
1
2.4k
JavaScript + Dockerの知見 / knowledge-of-docker-in-javascript
odanado
9
56k
Other Decks in Programming
See All in Programming
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.7k
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.1k
golang-bob.pdf
iwatsukayura
0
140
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
120
dotNET_vulnclicker_intro.pdf
deka_morita
0
150
Next.js: The final boss of Web Performance
guaca
0
330
オーケストレーション記述言語 Katari
yukikurage
0
190
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
150
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
1.8k
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
520
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
190
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
160
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
640
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.3k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
440
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Ethics towards AI in product and experience design
skipperchong
2
440
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Abbi's Birthday
coloredviolet
4
10k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
420
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
330
Designing for Performance
lara
612
70k
GraphQLとの向き合い方2022年版
quramy
50
15k
Transcript
最近のweb3.js事情 1 blockchain.tokyo#19 @odan3240
自己紹介 • Twitter: @odan3240 • ソフトウェアエンジニア ◦ フロントエンド ◦ AWS
◦ ブロックチェーン • 会社: モバイルファクトリー ◦ チーム: ブロックチェーンチーム ◦ DApssを身近にするUniqys Projectをやっている 2
web3.jsとは • Ethereum JavaScript API • Ethereumのノードと通信する君 ◦ JSON-RPCで会話 ▪
https://github.com/ethereum/wiki/wiki/JSON-RPC 3 トランザクションを送信する例
web3.jsの仕組み • 大きく分けて2つ ◦ JSON RPCの呼び出し ▪ provider という ▪
dapp ブラウザはこの機能を提供 ◦ JSON RPCの機能をJSの関数として提供 4
web3.js v1.0.0-beta.x • 2017年の7月頃から開発されている(?) • 最新は v1.0.0-beta.55 • beta版でバグがあることも... ◦
blockchain.tokyo#15のecouffes_さんのスライド 5
callback -> promise • JSON RPCの実行結果を受け取るのに callback関数を渡していた ◦ JavaScriptの昔のやり方 ◦
0.20.xまで現役 • v1.0.0-beta.xでは結果を promiseとして返すようになった 6
EIP 1193 • EIP 1193: Ethereum Provider API • provider.sendの
新しいinterfaceの提案を含んでいる • 旧 • 新 7
TypeScript対応 • v1.0.0-beta.38辺りから 型定義ファイルが提供され始めた ◦ 嬉しい • 単にJavaScriptを書いている時でもVS Codeで 関数や引数がサジェストされる
• またに間違っている... 8
Module API • v1.0.0-beta.54から入った ◦ https://web3js.readthedocs.io/en/1.0/web3-module.html • 独自のWeb3 モジュールを実装するためのAPI •
web3.ethなどの内部モジュールは すべてこのModule APIを使って書き直された • 使ってみた ◦ odanado/js-eth-personal-sign-examples-clone 9