Skip to content

Latest commit

 

History

History
95 lines (60 loc) · 2.59 KB

README.rst

File metadata and controls

95 lines (60 loc) · 2.59 KB

Short ReadMe

Please find the full documentation at https://blockchainbv.github.io/bexi/

Bexi is written in python and enables the integration of BitShares into an external exchange. The basic idea is that the external exchange will have one BitShares account to consolidate the funds that it holds for the customers. Deposits and withdrawals into and from said account is tracked and the customer balance calculated.

Nevertheless, this module is not meant to be an accounting platform for the external exchange, it is merely the technical realization of the integration.

Supported exchanges

This software was motivated and constructed for the implementation of the Lykke exchange. Thanks to Lykke it is available as open source (for licensing information please see LICENSE.rst file). If you operate your own exchange and wish to integrate BitShares, feel free to contact [email protected].

This library was implemented according to

https://streams.lykke.com/Project/ProjectDetails/bitshares-blockchain-integration-api https://docs.google.com/document/d/1KVd-2tg-Ze5-b3kFYh1GUdGn9jvoo7HFO3wH_knpd3U/edit

Who do I talk to?

[email protected]

Installation

Install environment

$ apt-get install -y python3 python3-pip

Install virtual environment and setup

$ pip3 install virtualenv
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

Run all tests (requires a mongodb instance running at localhost:27017)

$ pip install -r requirements-test.txt
$ tox

Build documentation:

$ make docs

Quick Guide

Fill in the operation storage details, as well as the BitShares exchange account and connection details in the config yaml files. The manage_service and blockchain_monitor require the memo key of the exchange account, whereas the sign_service requires only the active key. The active key is what you normally see as the private key, since it allows to move funds, whereas the memo key only allows reading the memo message of transfers.

Then initiate the blockchain monitor

$ python3 cli.py blockchain_monitor

Start the blockchain monitor service (isalive wsgi response for blockchain monitor)

$ python3 cli.py blockchain_monitor_service

Start the sign service

$ python3 cli.py sign_service

and the manage service

$ python3 cli.py manage_service