Coder Social home page Coder Social logo

bcoin-org.github.io's People

Contributors

bizmindx avatar blusyn avatar boymanjor avatar braydonf avatar bucko13 avatar chjj avatar darrenrm avatar dependabot[bot] avatar impranshu avatar kaleazy avatar kevinwin avatar lukechilds avatar martindale avatar mikedamm avatar nodech avatar orfeaslitos avatar ottosch avatar parth avatar pinheadmz avatar rajworking avatar rocky avatar ryan-lingle avatar sangaman avatar smcki012 avatar traviscibot avatar tuxcanfly avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bcoin-org.github.io's Issues

host not specified in Api documentation

const clientOptions = {
  network: network.type,
  port: network.rpcPort,
  apiKey: 'api-key'
}

should be updated to something similar to

const clientOptions = {
  host: ' node ip' // connect to your node ip  
  network: network.type,
  port: network.rpcPort,
  apiKey: 'api-key'
}

All buffers should be sent as hex strings

In general we should probably improve documentation to detail the data types of what is sent in the API, but one problem in particular is for when sending tx information (e.g. for the sign endpoint), error messages indicate that tx should be a buffer, but since JSON doesn't really recognize Buffers and just stringifies the object, what is actually expected is the hex version of the transaction. So whenever an endpoint expects a Buffer, it should actually be sent as a hex.

Multisig Wallet Guide

There is already a guide for multisig transactions so this should focus instead on setting up multi-signature wallets. The following details/examples should be included:

  • setting up normal "hot wallet" for live signing
  • setting up a watch only wallet for a multisig wallet. This should include instructions on how to watch for transactions coming in to that wallet (e.g. getting the xpubkeys necessary, importing them, and setting up the watch/notification events)
  • example use cases (e.g. situations where the extra security is useful, different numbers of signers and m-of-n situations, etc.)
  • Using the multisig across devices- this should include some walk-thru of the actual process of passing the MTX around to the different wallets for signing.

Use ChainDB to get TX and Block Info

Details and examples should include:

  • getting transactions from SPV vs. Full node
  • getting block information
  • getting stuck transactions
  • Getting UTXO/spentView and outputting useful information from it, e.g. output, input, and fee value

Guide for Timelocks in Bcoin

A guide on implementing timelocked transactions in Bcoin. The guide should focus on building the scripts out from scratch, including an example with manual tx management and one using the walletdb/client.

Topics to include:

  • What is nlocktime?
  • Introduce the CheckLockTimeVerify and CheckSequenceVerify opcodes
  • Use some real world use case to illustrate your example: e.g. Inheritance transaction to send money to your children, some business contract where funds are released after certain time, etc.
  • Include other potential use cases for timelocks in Bitcoin transactions and also, as per the ReadMe, ways your examples could be improved and built out for production
  • Ideally would link to a repo with working version of the code

๐Ÿ”—https://www.bountysource.com/issues/50370461-guide-for-timelocks-in-bcoin?utm_source=50370461&utm_medium=shield&utm_campaign=ISSUE_BADGE Bountysource๐Ÿ”—

Working with Segwit Transactions

Would be good to do a script walk through of creating a segwit compatible address (P2SH-P2WSH) and then signing a tx with corresponding redeem script

Wallet send tx default rate

In wallet doc when it run in regtest this 100 fee is too few: tx create without error , but the state in always in unconfirmed status (after insertion in block without any arror), with 1000 fee no prob, it may create some confuse situation

Error: wallet create options incomplete

The data in the box here: http://bcoin.io/api-docs/index.html?javascript#wallet-options
is incomplete. You can see that it does not include passphrase, which is included in the create wallet example:

let id, passphrase, witness, accountKey;
id='foo'
passphrase='bar'
witness='false'
accountKey='tpubDDh2XgSds1vBbeVgye88gsGQeCityoywRndtyrXcmvWqCgsFUyUKwzeDv8HiJhu9fC8jRAFMqxr4jj8eRTNTycmMao5wmsAScVf4jSMdPYZ'
const client = new bcoin.http.Client();
const options = {
  id: id,
  passphrase: passphrase,
  witness: witness,
  watchOnly: true,
  accountKey: accountKey
};

(async() => {
  const newWallet = await client.createWallet(options)
})();

Because of the link to see all of the options leading up the the box that is incomplete, a user may miss out on the fact that a passphrase can be sent along

Cross-Origin error causes GitHub fork button to break

Steps to Reproduce:

  1. Go to guides
  2. Click on API Docs link in Checkout our API Docs or the Full Documentation
  3. Click back to go back to the guides
  4. Fork is a text link instead of the button

It looks like a cross origin error is thrown only when navigating back as per the steps above. Error looks like:

buttons.js:1 Uncaught DOMException: Blocked a frame with origin "http://bcoin.io" from accessing a cross-origin frame.
    at https://buttons.github.io/buttons.js:1:66506
    at HTMLIFrameElement.l (https://buttons.github.io/buttons.js:1:796)

(credit to @inje for finding the bug)

Litecoin Donation?

I'm impressed by all the work with Bcoin and would like to send a few usd worth of coin. Some wallets are struggling with BTC fees though. It seems fitting to send some litecoin since I'm interested in Lcoin for the moment. How about litecoin donations?

Guide for "Coin Splitting" in case of hard fork

This guide should cover several different splitting options that we have seen recently:

  1. Most important- how to split coins in the event of a fork with no replay protection (reference)
  2. Cover how you would have split coins for the Bitcoin Cash fork
  3. Opt-in replay protection with payment to known address

For first situation, the three approaches that should be covered:

  • Replace by fee
  • nLockTime
  • Using miners coinbase tx

(some extra info/background here)

RPC commands require token to be set in client options

For RPC calls when wallet-auth: true, the admin token needs to be set as an option when instantiating the client:

const {WalletClient, Network} = require('bcoin');
const network = Network.get('regtest');

const walletOptions = {
  network: network.type,
  port: network.walletPort,
  apiKey: 'api-key'
  token: <ADMIN TOKEN OR WALLET TOKEN>
}

const walletClient = new WalletClient(walletOptions);

(async () => {
  const result = await walletClient.execute('getwalletinfo');
  console.log(result);
})();

The token property is stored in the bcurl/client, without setting this property there is no other way to add a token to an RPC call -- note that with the REST-API HTTP calls the docs already specify to add ?token=... or --token=...

https://bcoin.io/api-docs/?shell--curl#wallet-authentication

Guide to getting a full node running on VPS

A guide for running on AWS and Digital Ocean similar to the OpenBazaar Guide: https://openbazaar.zendesk.com/hc/en-us/articles/207852873-Guide-to-Setting-up-OpenBazaar-Server-on-a-VPS

Should include:

  • Both VPS options
  • At minimum a description of difference between doing SPV and Full Node, guide should be for full node though
  • Description of resource requirements
  • Guide should describe a secure setup
  • Guide should include how to interact with your node via SSH

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.