bitcoinjs-lib is a JavaScript Bitcoin library for Node.js and browsers, written in TypeScript with committed JavaScript files for verification.
The library provides tools for working with Bitcoin transactions, addresses, and cryptographic operations in JavaScript environments. It handles transaction construction, parsing, and manipulation, along with support for various Bitcoin address formats and payment types. The project emphasizes auditability and verification, with test coverage exceeding ninety-five percent and standardized code formatting to make the codebase easy to review.
Developers should use only tagged releases in production, as the master branch is unstable. The library is suitable for applications requiring Bitcoin transaction handling in JavaScript, whether running on servers or in browsers. Key management functionality such as key derivation and conversion has been separated into distinct libraries to reduce bundle size for projects that do not need cryptographic operations. The project maintains public communication channels on Matrix and IRC for developer discussion and support.
Development activity shows consistent engagement with the community through public issue tracking and pull requests. The maintainers emphasize open communication and collaborative problem-solving, encouraging users to report issues and contribute to improving the codebase. Documentation is actively maintained with examples and a web UI covering major APIs, and the team regularly enhances resources to support users beyond basic examples.