Documentation

Raiden

Fast, cheap, scalable token transfers for Ethereum

Quicklinks

Python 3.7 Chat on Gitter

The Raiden Network is an off-chain scaling solution, enabling near-instant, low-fee and scalable payments. It’s complementary to the Ethereum blockchain and works with any ERC20 compatible token. The Raiden project is work in progress. Its goal is to research state channel technology, define protocols and develop reference implementations.

INFO: The Raiden client and smart contracts have been released for mainnet with a limited alpha release of the Raiden Network in December 2018.

The Raiden Network is an infrastructure layer on top of the Ethereum blockchain. While the basic idea is simple, the underlying protocol is quite complex and the implementation non-trivial. Nonetheless the technicalities can be abstracted away, such that developers can interface with a rather simple API to build scalable decentralized applications based on the Raiden Network.

Raiden in a Nutshell

Table of Contents

Getting Started

Learn about Raiden

If you haven't used Raiden before, you can

Use Raiden

If you want to use Raiden:

Specification

Read the tentative specification for the Raiden Network to understand in detail how Raiden works. It is maintained within this repository.

Repositories

The Raiden Network is getting created with a set of tools, which are maintained in different repositories.

Core

  • The solidity smart contracts, librairies and deployment tools are used to bootstrap a Raiden Network on an Ethereum Chain.

  • The Raiden Python client within the current repository is used to manage payment channels and to make token transfers.

  • A configured matrix server joins a federation of Matrix servers which is used as the transport layer for the Raiden Network.

  • The Service repository contains the code for following services:

    • The Monitoring Service watches open payment channels when the user is not online.
    • The Pathfinding service supports users in finding the cheapest or shortest way to route a payment through the network.
  • The Light Client repository contains the code for following applications:

    • The Raiden Light Client SDK is a Raiden Network compatible client written in JavaScript/Typescript.
    • The Raiden dApp is a reference implementation of the Raiden Light Client SDK.

Tools

  • The Raiden WebUI is Raiden Web User Inteface to manage channels and make token transfers.

  • The Raiden Explorer visualizes the nodes of the Raiden Networks and shows more statistical information.

  • The Raiden Wizard makes it easy to install a Raiden client and join the Raiden Network.

  • The Scenario Player is an integration testing tool for the Raiden contracts, the Raiden client and the services.

  • The Workshop Scripts enable workshop fascilitators to easily host a Raiden Workshop.

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

Also have a look at the Raiden Development Guide and the Raiden Developer Onboarding Guide for more info.

License

Distributed under the MIT License.

Contact

Dev Chat: Gitter

Twitter: @raiden_network

Website: Raiden Network

Blog: Medium

Mail: contact@raiden.network

The Raiden project is led by brainbot labs Est.

Disclaimer: Please note, that even though we do our best to ensure the quality and accuracy of the information provided, this publication may contain views and opinions, errors and omissions for which the content creator(s) and any represented organization cannot be held liable. The wording and concepts regarding financial terminology (e.g. “payments”, “checks”, “currency”, “transfer” [of value]) are exclusively used in an exemplary way to describe technological principles and do not necessarily conform to the real world or legal equivalents of these terms and concepts.