serverless hosting
incentivised peer-to-peer storage
and content distribution

Swarm is a distributed storage platform and content distribution service, a native base layer service of the ethereum web3 stack. The primary objective of Swarm is to provide a decentralized and redundant store for dapp code and data as well as block chain and state data. Swarm is also set out to provide various base layer services for web3, including node-to-node messaging, media streaming, decentralised database services and scalable state-channel infrastructure for decentralised service economies.

  • Fault Tolerant

    Redundant storage: local replication and erasure coding ensures data availability even in the face of node dropouts or data loss.

  • Censorship Resistant

    Sites cannot be 'taken down': data is stored throughout the network without vulnerable central hubs.

  • DDoS Resistant

    Fully decentralised peer-to-peer network is more resilient against DDoS than any centralised system.

  • Zero Downtime

    Redundancy ensures that the network continues to deliver data even when individual nodes go offline.

  • Self-sustaining

    Built-in incentive system ensures the network's economic viability.

From the end user's perspective, Swarm is not that different from the world wide web. In the background, the difference is that content is hosted on a peer-to-peer storage network instead of individual servers. This peer-to-peer network is self-sustaining due to a built-in incentive system which uses peer-to-peer accounting and allows trading resources for payment. Swarm is designed to deeply integrate with the devp2p multiprotocol network layer of Ethereum as well as with the Ethereum blockchain for domain name resolution, service payments and content availability insurance.

Install on Ubuntu via PPAs

The simplest way to install Swarm on Ubuntu distributions is via the built in launchpad PPAs (Personal Package Archives). We provide a single PPA repository that contains our stable releases for Ubuntu versions trusty, xenial, artful, bionic and cosmic.

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum-swarm


Installing Swarm from source

The latest Swarm source code can be found on Github: https://github.com/ethereum/go-ethereum.

To build Swarm from source, you'll need to ensure that you have Go 1.10 installed (or latest version).

go get -d github.com/ethereum/go-ethereum
go install github.com/ethereum/go-ethereum/cmd/swarm

Run Swarm in a Docker container

The official Swarm Docker image including documentation on how to run it can be found at https://github.com/ethersphere/swarm-docker or pulled from ethdevops/swarm.

You can find pre-packaged builds of stable and unstable versions of Swarm on our Downloads page.

Swarm documentation can be found at https://swarm-guide.readthedocs.io.

Since Swarm is under active development, new features are constantly being added, tweaked and fine-tuned. In order to keep the documentation relatively up to date, the community is encouraged to contribute to the guide by submitting pull requests to the documentation repository.

Swarm is under active development.

The ethersphere orange paper series is an attempt to provide an umbrella for sharing and publishing technical reports of the ongoing research on formal foundations of web3 base layer infrastructure. Our aim is to foster synergy and collaboration between various groups and individuals working in the ethersphere. The Orange of the orange paper pays hommage to the yellow paper but tainted with the blood sweat and tears of cutting edge research.

In October 2017 five working groups are starting.

We encourage and appreciate any feedback be it a thorough academic peer review, suggestions for improvement, criticism, questions, typos or just a word of support.

In October 2017 five working groups are starting.

Network Testing and Simulation Framework

A project aimed at testing the behaviour of many interconnected Swarm clients, to observe emergent network behaviour and use the results to make the Swarm more efficient and resilient. (demo)


PSS is concerned with routing messages over the Swarm network to allow direct node-to-node communication as well as decentralised email and postal services. (demo)


This project aims to bring streaming content (audio / video) to the Swarm network. (demo)

POT/SWORD model for Decentralised database services

This project aims to work on the POT data structure and the SWORD model of distributed provable databases (demo)

Swap, Swear and Swindle contract development

Swap-Swear-Swindle is the name of Swarm's state channel infrastructure as described in the orange papers. This working group aims to implement this generic incentive structure on the ethereum blockchain.

Data Encoding and Encryption

Swarm is planning to use erasure coding and encryption to ensure data availablilty an security. Well designed obfuscation schemes allow content to be hosted on the network without endagering the participating nodes by guaranteeing them plasuble deniability. (demo)

Descr. Links Vids PDF
An hour and a half deep dive into technological basis of Swarm, the vision of web3, p2p and blockchain and more. Oktahedron podcast. Swarm with Viktor Trón. - -
Nick Johnson: Ethereum Name System DevCon2, Shanghai, 19th Sep 2016 -
Viktor Trón, Aron Fischer: Swap, Swear and Swindle. Swarm Incentivisation. DevCon2, Shanghai, 19th Sep 2016.
Viktor Trón: Towards Web3 Infrastructure. Viktor Trón: Towards Web3 Infrastructure. DevCon2, Shanghai, 19th Sep 2016.
Dániel A. Nagy: Developing Scalable Decentralized Applications for Swarm and Ethereum DevCon2, Shanghai, 19th Sep 2016 -
Viktor Trón, Aron Fischer: Swarm. Ethereum Meetup, pre-DevCon edition, Amsterdam, 30th Aug 2016. -
Viktor Trón, Aron Fischer: blockchain and web3. Institute for Information Law - University of Amsterdam, 2nd Sep 2016. -
Viktor Trón, Aron Fischer: The rise of the third web. Bitcoin Wednesday Amsterdam #39, 7th Sept 2016. -
Aron Fischer, Dániel A. Nagy, Viktor Trón: Swarm - Ethereum. Ethereum Meetup, Berlin, 25 May 2016.
Viktor Trón, Nick Johnson: Swarm, web3, and the Ethereum Name Service. Ethereum meetup London, 9 June 2016.
Nagy Dániel, Trón Viktor: Ethereum és Swarm: okos szerződések és elosztott világháló. Budapest Bitcoin Meetup. 20 June 2016.
Dániel Nagy: Swarm: Distributed storage for Ethereum, the Turing-complete blockchain. Linux Piter Nov 2015.
Viktor Trón, Dániel A. Nagy: Swarm. Ethereum Devcon1, London, Nov 2015. - -
Dániel A. Nagy: Keeping the public record safe and accessible. Ethereum Devcon0, Berlin, Dec 2014. - -
Descr. Links
Ethereum's holy trinity takes shape as Swarm testnet arrives. Ethereum's holy trinity takes shape as Swarm testnet arrives. Coindesk, Sep 25, 2016
9 must-watch talks at Ethereum's devcon2. 9 must-watch talks at Ethereum's devcon2. Coindesk, Sep 25, 2016
Ethereum's Viktor Trón talks about Swarm and the skeleton of Web 3.0. Ethereum's Viktor Trón talks about Swarm and the skeleton of Web 3.0. Ian Alison, IBTimes UK. May 18, 2016
Decentralized Storage: the Backbone of the Third Web. Decentralized Storage: the Backbone of the Third Web. Arthur Falls on Consensys Blog. June 30, 2016
Decentralised storage Swarm to be built on Ethereum blockchain. Decentralised storage Swarm to be built on Ethereum blockchain. Alexey Tereshchenko. Coinfox. 11 May, 2016