# @leather-wallet/bitcoin

> Shared bitcoin utilities

Latest version **0.7.4** (published 2024-06-20) · MIT license · 0 weekly downloads

## Install

```sh
npm install @leather-wallet/bitcoin
pnpm add @leather-wallet/bitcoin
yarn add @leather-wallet/bitcoin
bun add @leather-wallet/bitcoin
```

## Health

**Score 35/100 (D)** — status: abandoned.

Positive: esm support; no vulnerabilities; high maintenance score.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 0.7.4 |
| Published | 2024-06-20 |
| First published | 2024-02-20 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM |
| Dependencies | 17 |
| Unpacked size | 117.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 27 |
| Author | Leather.io contact@leather.io |
| Maintainers | pete-watters, kyranjamie, leather-user |
| Keywords | bitcoin, leather, leather wallet |

## Links

- npm: https://www.npmjs.com/package/@leather-wallet/bitcoin
- Repository: https://github.com/leather-wallet/mono
- Homepage: https://github.com/leather-wallet/mono/tree/dev/packages/bitcoin
- Issues: https://github.com/leather-wallet/mono/issues
- npm.io page: https://npm.io/package/@leather-wallet/bitcoin

## Dependencies (17)

- [bip32](https://npm.io/package/bip32.md) 4.0.0
- [ecpair](https://npm.io/package/ecpair.md) 2.1.0
- [@scure/base](https://npm.io/package/@scure/base.md) 1.1.6
- [@scure/bip32](https://npm.io/package/@scure/bip32.md) 1.4.0
- [@scure/bip39](https://npm.io/package/@scure/bip39.md) 1.3.0
- [@noble/hashes](https://npm.io/package/@noble/hashes.md) 1.4.0
- [bitcoinjs-lib](https://npm.io/package/bitcoinjs-lib.md) 6.1.5
- [@stacks/common](https://npm.io/package/@stacks/common.md) 6.13.0
- [varuint-bitcoin](https://npm.io/package/varuint-bitcoin.md) 1.1.2
- [@noble/secp256k1](https://npm.io/package/@noble/secp256k1.md) 2.1.0
- [@scure/btc-signer](https://npm.io/package/@scure/btc-signer.md) 1.3.2
- [@stacks/transactions](https://npm.io/package/@stacks/transactions.md) 6.15.0
- [@leather-wallet/utils](https://npm.io/package/@leather-wallet/utils.md) 0.8.3
- [@leather-wallet/crypto](https://npm.io/package/@leather-wallet/crypto.md) 1.0.1
- [@leather-wallet/models](https://npm.io/package/@leather-wallet/models.md) 0.9.0
- [@bitcoinerlab/secp256k1](https://npm.io/package/@bitcoinerlab/secp256k1.md) 1.0.2
- [@leather-wallet/constants](https://npm.io/package/@leather-wallet/constants.md) 0.7.0

## Recent versions

- 0.7.4 (latest) — 2024-06-20
- 0.7.3 — 2024-06-17
- 0.7.2 — 2024-06-10
- 0.7.1 — 2024-06-07
- 0.7.0 — 2024-06-07
- 0.6.10 — 2024-06-05
- 0.6.9 — 2024-06-05
- 0.6.6 — 2024-05-31
- 0.6.5 — 2024-05-23
- 0.6.4 — 2024-05-22
- 0.6.3 — 2024-05-22
- 0.6.2 — 2024-05-22
- 0.6.1 — 2024-05-20
- 0.6.0 — 2024-05-17
- 0.5.1 — 2024-05-17
- … 6 more at https://npm.io/package/@leather-wallet/bitcoin/versions

## README

# Leather Mono

The purpose of this monorepo is to provide a single home for core Leather functionality. The monorepo uses [`pnpm` workspaces](https://pnpm.io/workspaces) and [Turborepo](https://turbo.build/repo/docs). Packages are found under `packages/*`. Apps are found under `apps/*`.

## Installation

1. `pnpm i` at the `mono` root
2. Run `pnpm build`

## Architecture

![Leather architecture diagram](https://raw.githubusercontent.com/leather-io/mono/refs/heads/architecture/leather-architecture.svg)

- [Architecture](docs/core/ARCHITECTURE.md)
- [Monorepo](docs/core/MONOREPO.md)

Coding standards are enforced through the use of

- `eslint`
- `prettier`
- `typescript`
- `syncpack`
- `ls-lint`

### Monorepo core packages

The current packages are listed below

- [ESLint](packages/eslint-config/README.md)
- [Prettier](packages/prettier-config/README.md)
- [TSconfig](packages/tsconfig-config/README.md)

## Running code quality checks with git hooks

Configure code checks to run during pre-commit and/or pre-push hooks. Each check maps directly to a script in the root package.json.

1. Copy `.env.example` to `.env`.
2. Enable specific checks for each hook::

```
PRE_COMMIT=format,lint
PRE_PUSH=syncpack:lint,typecheck,lint:filenames
```

In most cases, setting PRE_COMMIT is sufficient, as errors from remaining checks are
uncommon, and typechecking is handled by editors.

Local checks are optional and configurable to suit developer preferences. On GitHub, these
checks run automatically on every push through [Code checks](.github/workflows/code-checks.yml), as part of the CI workflow.

### Updating pnpm version

To update pnpm, use the helper script which updates all required locations:

```bash
./scripts/update-pnpm-version.sh <version>
```

This updates `.prototools`, `.github/actions/provision/action.yml`, and `package.json` in one command.

### Documentation

Documentation has been provided from the outset and can be found in `docs/tools/` along with a [TEMPLATE.md](docs/core/TEMPLATE.md) file

### Development with extension

To be able to develop packages and test those in extension, check out this [guide](docs/extension-development.md)

## License

[MIT](LICENSE) © [Leather Wallet LLC](https://github.com/leather-io/mono)

---
_Source: https://npm.io/package/@leather-wallet/bitcoin · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
