The Arweave server and App Developer Toolkit.
Clone or download
Failed to load latest commit information.
blocks - Updated documentation, .gitignore , ubuntu install script Jul 5, 2018
data - Added final genesis messages. Jun 8, 2018
ebin Add missing gitignore files Aug 20, 2018
lib - Added optional block subfield querying feature. Jul 12, 2018
logs Add missing gitignore files Aug 20, 2018
maps - Added map rendering. Sep 29, 2018
priv Add missing gitignore files Aug 20, 2018
src Bump version and release numbers Nov 14, 2018
test De-'EOF'-ed the repo. Our eyes and our operating system can tell us w… Oct 17, 2018
txs - Updated documentation, .gitignore , ubuntu install script Jul 5, 2018
.dockerignore Adding Dialyzer to Makefile Jun 16, 2018
.gitignore - Correct single_regossip_test_behaviour. Sep 10, 2018
.gitmodules More prometheus metrics Jun 22, 2018 - Updated documentation, .gitignore , ubuntu install script Jul 5, 2018 - Update Jul 24, 2018
Dockerfile Change Dockerfile to be based on Ubuntu 18.04 (#64) Sep 29, 2018
Emakefile Adding deps Jun 21, 2018 - Added Oct 6, 2017
Makefile Propagate clean down to deps Oct 31, 2018 - Fleshes out ADT_README. Nov 2, 2017 - Add auto-updater to startup options. Jul 12, 2018
arweave-server - Do not wipe the data directory on build. Oct 6, 2018
arweave-server.cmd - Further tidied codebase. May 7, 2018 - Added arweave_styleguide. Jun 26, 2018
docker-arweave-server Correct mode of docker-arweave-server script and copy it to the Docke… Jul 13, 2018 Add postman collection button (#65) Oct 3, 2018 - Added tag fetch to auto update command, updated install tag, releas… Jul 13, 2018 - Fixed timeouts in node/bridge. May 28, 2018

Arweave Server

This repository holds the Arweave server, as well as the App Developer Toolkit (ADT) and the Arweave testing framework, TNT/NO-VLNS.

Arweave is a distributed, cryptographically verified permanent archive built on a cryptocurrency that aims to, for the first time, provide feasible data permanence. By leveraging our novel Blockweave datastructure, data is stored in a decentralised, peer-to-peer manner where miners are incentivised to store rare data.


In order to run the Arweave server prototype and ADT, a recent (R20 and above) version of Erlang/OTP is required as well as a version of make.

Getting Started

To get started, simply download this repo. You can start an Arweave server session simply by running make session.

You can learn more about building Arweave ADT apps by checking out our documentation here.

For more information on the Arweave project and to read our lightpaper visit

Ubuntu/Debian Linux Quickstart

You can download the Arweave codebase, all dependencies and start mining straight away by opening a terminal and running:

curl | bash && cd arweave && ./arweave-server mine peer peer yyy.yyy.yyy.yyy

Don’t forget to change, yyy.yyy.yyy.yyy, etc to the IP addresses you want to peer with.


TNT (Tiny Network Tests) and NO-VLNS (Never Off Very Large Network Simulator) are the two halves of Arweave's testing suite.

You can launch TNT by running make tnt and NO-VLNS by running make no-vlns.

More information on TNT and NO-VLNS can be found on our Medium blog.

App Developer Toolkit (ADT)

You can find separate documentation for the App Developer Toolkit here.


You can find documentation regarding our HTTP interface here.


If you have questions or comments on the Arweave you can get in touch by finding us on Twitter, Reddit, Discord or by emailing us at


The Arweave project is released under GNU General Public License v2.0. See LICENSE for full license conditions.