Socket
Socket
Sign inDemoInstall

@gobob/btcsnap

Package Overview
Dependencies
11
Maintainers
3
Versions
7
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @gobob/btcsnap

btcsnap: Metamask snap to manage your bitcoin


Version published
Weekly downloads
0
decreased by-100%
Maintainers
3
Created
Weekly downloads
 

Readme

Source

Zion

0.3.1

Zion is the world's first application allowing users to directly manage Bitcoin within the MetaMask interface, without having to wrap tokens. Zion is currently live on Metamask.

MetaMask Snaps Introduction

Snaps is a system that allows developers to safely build and expand the capabilities of MetaMask. It is a program that is run in an isolated environment with a limited set of capabilities, that can customize and modify MetaMask's wallet experience for end users. For example, a snap can add new APIs to MetaMask thus adding support for different blockchains or modify existing functionalities using internal APIs.

Additional information can be found here.

Usage

  1. Enable btcsnap in your dapp
const result: boolean = await ethereum.request({
  method: 'wallet_requestSnaps',
  params: {
    "npm:btcsnap": {},
  }
})
  1. Get an extended public key
const response = await ethereum.request({
  method: 'wallet_invokeSnap',
  params: {
    snapId: "npm:btcsnap",
    request: {
      method: 'btc_getPublicExtendedKey',
      params: {
        network: "test",
        scriptType: "P2WPKH"
      },
    }
  }
})
  1. Sign Psbt
const result: { txId:string, txHex:string } = await ethereum.request({
  method: 'wallet_invokeSnap',
  params: {
    snapId: "npm:btcsnap",
    request: {
      method: 'btc_signPsbt',
      params: {
        psbt: base64Psbt, // base64 string for the pbst,
        network: "Main", // for testnet use "Test",
        scriptType: "P2PKH" // "P2SH-P2WPKH" or "P2WPKH"
      },
    },
  }
})

Building

Build the snap and test it locally with the following command:

yarn rebuild

Testing

Use the following command to run tests:

yarn test
Testing Coverage
File% Stmts% Branch% Funcs% Lines
All files97.6791.4610097.61

Live Example

If you would like to integrate btcsnap into your dapp, you can use the following codes here.

FAQs

Last updated on 27 Nov 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc