
Security News
Axios Maintainer Confirms Social Engineering Attack Behind npm Compromise
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.
@carnesen/bitcoind
Advanced tools
A Node.js library for managing the bitcoin server process `bitcoind`
A Node.js library for managing the bitcoin server process bitcoind
$ npm install @carnesen/bitcoind
The package includes runtime JavaScript files suitable for Node.js >=8 as well as the corresponding TypeScript type declarations.
Here is a little TypeScript Node.js script that spawns bitcoind:
// example.ts
import { spawn } from '@carnesen/bitcoind';
const bitcoinHome = '/usr/local/bitcoin-0.17.1';
(async () => {
try {
await spawn({ bitcoinHome });
process.exit(0);
} catch (ex) {
console.log(ex);
process.exit(1);
}
})()
Running this script looks like:
$ ts-node example.ts
2019-01-24T03:57:07Z Bitcoin Core version v0.17.1 (release build)
2019-01-24T03:57:07Z InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1
2019-01-24T03:57:07Z Validating signatures for all blocks.
...
The bitcoind child process inherits the Node.js parent's stdout, stdin, and stderr. So in non-daemon mode when bitcoind logs to the terminal, so does the parent.
Reads a bitcoin configuration file and spawns bitcoind as a child process
string. If not provided, bitcoind must be on your PATH. If provided, absolute path of a directory where the bitcoin server software is installed. By convention, bitcoind must be located at `${bitcoinHome}/bin/bitcoind`.
string. Defaults to the platform-dependent location where the bitcoin server software looks for its configuration file, e.g. '~/.bitcoin/bitcoin.conf' on Linux. Before spawning bitcoind, spawnBitcoin reads the configuration file and modifies its behavior slightly based on what it finds. If the configuration does not specify daemon as true, the spawnBitcoin kills the child bitcoind process if the parent Node.js process exits. Also if daemon is not set to true (1), bitcoind exiting is always considered an error even if it exits with status code 0 (success).
Represents the running bitcoind child. If there is an error spawning the child or if the child exits for any reason, the promise rejects. The only exception to that rule is if daemon is set to true and the child's exit status is 0 (success). In that case the promise resolves.
This library has a number of unit tests with >95% coverage. Check out the tests directory for more examples of how it works. If you encounter any bugs or have any questions or feature requests, please don't hesitate to file an issue or submit a pull request on this project's repository on GitHub.
@carnesen/bitcoind-cli: A Node.js CLI and library for managing the bitcoin server process bitcoind
@carnesen/bitcoin-config: A Node.js library for bitcoin server software configuration
FAQs
A Node.js library for managing the bitcoin server process `bitcoind`
We found that @carnesen/bitcoind demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
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.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.