Not Pictured: Mangoes

    @stacks/rx
    TypeScript icon, indicating that this package has built-in type declarations

    0.0.7 • Public • Published

    @stacks/rx

    Build and test status

    Reactive Extensions client for the Stacks Blockchain 🚀

    Getting Started

    yarn add @stacks/rx rxjs
    import { RxStacks, HIRO_API_URL } from '@stacks/rx';
    
    const client = new RxStacks({ url: HIRO_API_URL });
    
    client.blocks$.subscribe(block => console.log('New block: ', block.height));

    Demo App

    git clone https://github.com/blockstack/rx
    cd demo/demo-app
    yarn && yarn start

    Open http://localhost:3000 to view it in your browser.

    Tutorial

    Broadcasting a transaction

    Tutorial

    Using @stacks/rx to follow a transaction's lifecycle

    const { broadcastTx } = new RxStacks({ url });
    
    broadcastTx(transaction)
      .pipe(
        concatMap(txid => {
          notifyBroadcastSuccess(tx);
          return mempoolTxs$.pipe(filterByTxid(txid));
        }),
        concatMap(memTx => {
          notifyTxInMempool(mempoolTx);
          return txs$.pipe(filterByTxid(txid));
        })
      )
      .subscribe(tx => notifyTransactionConfirm(tx));
    const txid = await broadcastTx(transaction)({
      onBroadcastSuccess(),
      onBroadcastError(),
      onMempoolInclusion(),
      onTransactionConfirmedInBlock(),
    })

    Resources

    Install

    npm i @stacks/rx

    DownloadsWeekly Downloads

    12

    Version

    0.0.7

    License

    MIT

    Unpacked Size

    28.4 kB

    Total Files

    38

    Last publish

    Collaborators

    • janniks
    • ablankstein
    • yknl
    • aulneau
    • kyranjamie
    • zone117x
    • hstove
    • blockstack-devops
    • reedrosenbluth