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...
Search
Miloš Mošić
May 24, 2019
Programming
1
340
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
600
Phoenix LiveView - Making modern web apps without JavaScript
mosic
0
320
Elixir @ Evercam
mosic
3
1.4k
Other Decks in Programming
See All in Programming
Deep Dive into ~/.claude/projects
hiragram
14
2.5k
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
330
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
590
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
110
Discover Metal 4
rei315
2
130
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
100
RailsGirls IZUMO スポンサーLT
16bitidol
0
180
Hack Claude Code with Claude Code
choplin
4
2k
PipeCDのプラグイン化で目指すところ
warashi
1
270
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
760
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.3k
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
320
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
690
Thoughts on Productivity
jonyablonski
69
4.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Code Reviewing Like a Champion
maltzj
524
40k
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!