Home

Awesome

Chain Abstraction Layer <img align="right" src="https://raw.githubusercontent.com/liquality/chainabstractionlayer/master/liquality-logo.png" height="80px" />

Build Status Coverage Status Standard Code Style MIT License ChainAbstractionLayer Gitter Telegram Greenkeeper badge

:warning: This project is under heavy development. Expect bugs & breaking changes.

:pencil: Introductory Blog Post: The Missing Tool to Cross-Chain Development

Query different blockchains with account management using a single and simple interface.

Installation

npm install @liquality/chainabstractionlayer

Error: Cannot find module 'babel-runtime/core-js/get-iterator'

Issues to track: LedgerHQ/ledgerjs/issues/211, LedgerHQ/ledgerjs/issues/218

npm install babel-runtime

Usage

import { Client, providers } from '@liquality/chainabstractionlayer'

const { BitcoinRPCProvider } = providers.bitcoin

const bitcoin = new Client()
bitcoin.addProvider(new BitcoinRPCProvider('http://localhost:8080', 'bitcoin', 'local321'))

bitcoin
  .generateBlock(1) // returns Promise
  .then(console.log) // Array<BlockHash>

Try ChainAbstractionLayer in Browser

<table> <thead> <tr> <th>Chain</th> <th>Wallet Provider</th> <th></th> </tr> </thead> <tbody> <tr> <td rowspan=2>Ethereum</td> <td>Ledger</td> <td> <a href="./examples/browser/ethereum/ledger.html">Source</a> &amp; <a href="https://liquality.github.io/chainabstractionlayer/examples/browser/ethereum/ledger.html">Demo</a> </td> </tr> <tr> <td>MetaMask</td> <td> <a href="./examples/browser/ethereum/metamask.html">Source</a> &amp; <a href="https://liquality.github.io/chainabstractionlayer/examples/browser/ethereum/metamask.html">Demo</a> </td> </tr> <tr> <td>Bitcoin</td> <td>Ledger</td> <td> <a href="./examples/browser/bitcoin/ledger.html">Source</a> &amp; <a href="https://liquality.github.io/chainabstractionlayer/examples/browser/bitcoin/ledger.html">Demo</a> </td> </tr> </tbody> </table>

Documentation

The documentation is being generated by esdoc. Github Page hosted documentation is available at liquality.github.io/chainabstractionlayer

If you want to build documentation locally;

npm run build:docs

License

MIT