UNPKG

@babylonlabs-io/btc-staking-ts

Version:

Library exposing methods for the creation and consumption of Bitcoin transactions pertaining to Babylon's Bitcoin Staking protocol.

58 lines (44 loc) 2.1 kB
<p align="center"> <img alt="Babylon Logo" src="https://github.com/user-attachments/assets/dc74271e-90f1-44bd-9122-2b7438ab375c" width="100" /> <h3 align="center">@babylonlabs-io/btc-staking-ts</h3> <p align="center">Babylon Bitcoin Staking Protocol</p> <p align="center"><strong>TypeScript</strong> library</p> <p align="center"> <a href="https://www.npmjs.com/package/@babylonlabs-io/btc-staking-ts"><img src="https://badge.fury.io/js/btc-staking-ts.svg" alt="npm version" height="18"></a> </p> </p> <br/> ## 👨🏻‍💻 Installation ```console npm i @babylonlabs-io/btc-staking-ts ``` ## 📝 Commit Format & Automated Releases This project uses [**Conventional Commits**](https://www.conventionalcommits.org/en/v1.0.0/) and [**semantic-release**](https://semantic-release.gitbook.io/) to automate versioning, changelog generation, and npm publishing. However, release branch will be cut wiht the syntax of `release/vY.X` whenever there is a major version bump. ### ✅ How It Works 1. All commits must follow the **Conventional Commits** format. 2. When changes are merged into the `main` branch: - `semantic-release` analyzes commit messages - Determines the appropriate semantic version bump (`major`, `minor`, `patch`) - Updates the `CHANGELOG.md` - Tags the release in Git - Publishes the new version to npm (if configured) ### 🧱 Commit Message Examples ```console feat: add support for slashing script fix: handle invalid staking tx gracefully docs: update README with commit conventions refactor!: remove deprecated method and cleanup types ``` > **Note:** For breaking changes, add a `!` after the type ( > e.g. `feat!:` or `refactor!:`) and include a description of the breaking > change in the commit body. ### 🚀 Releasing Just commit your changes using the proper format and merge to `main`. The CI pipeline will handle versioning and releasing automatically — no manual tagging or version bumps needed. ## 📢 Usage Guide Details on the usage of the library can be found on the [usage guide](./docs/usage.md).