Giter Club home page Giter Club logo

loopchain's Introduction

Loopchain

Loopchain is a high-performance Blockchain Consensus & Network engine of ICON project.

In order to run a loopchain node, you need to install ICON Service that runs a smart contract and interacts with loopchain engine, and ICON RPC Server that processes HTTP requests from clients.

For details, refer to the guide below.

Table of Contents

Getting Started

Requirements

Loopchain development and execution requires following environments.

  1. Python 3.6.5+ (recommended 3.7.x)

    We recommend to create an isolated Python 3 virtual environment with virtualenv.

    $ virtualenv -p python3 venv
    $ source venv/bin/activate

    NOTE: We will support 3.7.x only in the future. Please upgrade python version to 3.7.x

  2. RabbitMQ 3.7+

    Loopchain requires RabbitMQ.

    For the reliable installation, please visit: Downloading and Installing RabbitMQ

  3. Reward Calculator

    Reward calculator is a daemon which calculates I-Score of ICONists to support IISS.

    Please visit Reward calculator github repository to install it.

  4. Other Dependencies

    • MacOS

      $ brew install automake pkg-config libtool leveldb openssl
    • Ubuntu

      $ sudo apt update
      $ sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
        libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
        xz-utils tk-dev libffi-dev liblzma-dev automake libtool lsof

      NOTE: If you are using ubuntu 18.04, you need to install additional library libsecp256k1-dev

    • CentOS

      $ sudo yum update
      $ sudo yum install -y git zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel \
        xz xz-devel libffi-devel gcc gcc-c++ automake libtool lsof

Installation

via source code

  1. Check all requirements properly installed

    $ make requirements

    If you don't see any error logs and you have started rabbitmq server, you may move on to next step.

  2. Proceed installation

    $ make all

    This command is for setting up:

    • packages: installs all necessary python packages via setup.py.
    • gRPC proto: generates python gRPC code from protocol buffer which is defined in loopchain.proto
    • keystore: generates a keystore file.

    NOTE: Password must be at least 8 characters long including alphabet, number, and special character. Please be careful not to forget the password since you will need it to run the Citizen Node.

  3. Run Citizen

via snapcraft (linux only)

  1. follow this guide : install loopchain via snap

TearDown

  • Clear RabbitMQ processes & pycache & build

    $ make clean
  • Delete log / delete DB

    $ make clean-log clean-db

NOTE: For more command options, $ make help

See Also...

Documentation

License

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.