mdaiter / arweave

The Arweave server and App Developer Toolkit.

Home Page:https://www.arweave.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

Requirements

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 arweave.org.

Mining

To start mining, follow the instructions in the mining guide.

Development

Prerequisites

  • Erlang OTP v20
  • GNU Make

Run tests

make test

The command launches two Erlang VMs connected in the distributed mode. The master VM runs an HTTP server on the port 1984. The slave VM uses the port 1983. The data folders are data_test_master and data_test_slave accordingly. The tests that do not depend on two VMs are run against the master VM.

Build and enter shell

make session

App Developer Toolkit (ADT)

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

HTTP API

You can find documentation regarding our HTTP interface here.

Contact

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 team@arweave.org.

License

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

About

The Arweave server and App Developer Toolkit.

https://www.arweave.org

License:GNU General Public License v2.0


Languages

Language:Erlang 73.0%Language:C++ 18.6%Language:C 6.0%Language:HTML 1.4%Language:Makefile 0.6%Language:Shell 0.2%Language:Dockerfile 0.1%Language:Batchfile 0.0%Language:Python 0.0%