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
Introduction to Erebos: a JavaScript client for Swarm
Search
Miloš Mošić
May 24, 2019
Programming
1
250
Introduction to Erebos: a JavaScript client for Swarm
The talk given at the Swarm Orange Summit in Madrid, 2019.
Miloš Mošić
May 24, 2019
Tweet
Share
More Decks by Miloš Mošić
See All by Miloš Mošić
Elixir_and_Blockchain_-_a_Perfect_Match.pdf
mosic
0
520
Phoenix LiveView - Making modern web apps without JavaScript
mosic
0
260
Elixir @ Evercam
mosic
3
1.3k
Other Decks in Programming
See All in Programming
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
410
Front-end application development, Symfony-style(s)
dunglas
2
1.9k
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
39
17k
AWS Application Composerで始める、 サーバーレスなデータ基盤構築 / 20240406-jawsug-hokuriku-shinkansen
kasacchiful
1
240
9年開発を牽引して見えてきた、共通化すべきものと個別でつくるもの ~プログラム言語~
shinout
1
640
1인 개발자로 행복하게 살기 - GDG 송도 헬로월드 2024
benjaminkim
1
5.6k
チーム力を高めるスクラム実践法:カンバン公開と課題攻略について - ニフティのスクラムトーク Vol. 2 - NIFTY Tech Talk #18
niftycorp
PRO
1
110
OpenAPI を守るのは難しい
ohmori_yusuke
2
770
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
"config" ってなんだ? / What is "config"?
okashoi
0
210
코틀린으로 멀티플랫폼 만들기
pangmoo
0
120
Ruby製社内ツールのGo移行
bgpat
2
330
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
BBQ
matthewcrist
79
8.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
The Cult of Friendly URLs
andyhume
73
5.7k
We Have a Design System, Now What?
morganepeng
42
6.7k
Build your cross-platform service in a week with App Engine
jlugia
224
17k
Large-scale JavaScript Application Architecture
addyosmani
503
110k
Code Review Best Practice
trishagee
54
15k
Building Better People: How to give real-time feedback that sticks.
wjessup
353
18k
Transcript
Introduction to Erebos: a JavaScript client for Swarm Miloš Mošić
JavaScript client?
swarmgw swarm-js Are there any other JavaScript clients for Swarm?
What is Erebos?
• Bzz APIs • Pss APIs • CLI • Timeline
• Utility libraries
bzz.download() bzz.upload() bzz.uploadFile() bzz.uploadDirectory() bzz.list() bzz.hash() What do Erebos bzz
packages support?
Is that really all?
Bzz functions specific to the Node.js client bzz.downloadObservable() bzz.downloadDirectoryData() bzz.downloadFileTo()
bzz.downloadDirectoryTo() bzz.downloadTo() bzz.uploadFileStream() bzz.uploadTar() bzz.uploadFileFrom() bzz.uploadDirectoryFrom() bzz.uploadFrom()
How about Feeds?
Feeds functions bzz.getDownloadURL() bzz.getUploadURL() bzz.getFeedURL() bzz.deleteResource() bzz.createFeedManifest() bzz.createFeedDigest() bzz.getFeedTopic() bzz.getFeedMetadata()
bzz.getFeedValue() bzz.pollFeedValue() bzz.postSignedFeedValue() bzz.postFeedValue() bzz.updateFeedValue() bzz.uploadFeedValue()
What problems did it solve for us?
• Higher level abstractions over the HTTP API • Breaking
changes in Swarm
• https://github.com/ethersphere/swarm-docker • https://hub.docker.com/r/ethdevops/swarm Breaking Changes in Swarm
CLI
Wait, Swarm already has a CLI?
• Bzz APIs • Pss APIs • Website commands
Bzz commands in the CLI bzz:upload bzz:download bzz:list bzz:hash
Pss commands in the CLI pss:address pss:key pss:topic pss:listen pss:send
pss:peer
Website commands in the CLI website:setup website:publish
Timeline
Timeline functions timeline.download() timeline.upload() timeline.getChapter() timeline.loadChapter() timeline.updateChapterID() timeline.addChapter() timeline.createUpdater() timeline.createIterator()
timeline.loadChapters() timeline.live()
Feed Subscriptions
• Messaging • Version updates
Erebos website https://erebos.js.org/
Thank you!