Major Improvements to the Bitcore API

We're very happy to announce the availability of Bitcore 0.8, a new release of our flagship Javascript library for developing Bitcoin projects. This new release implements a completely new API, incorporating feedback from a growing list of contributors and other projects using Bitcore. We'd like to outline some of the major changes and some of our future plans.

bitcore 0.8

Although powerful, the original Bitcore, 0.1.x, had usability problems and design issues that we uncovered as the Bitcoin ecosystem grew and changed around it. We needed a fresh approach, with the added experience of lessons learned. The best approach was to start with a complete re-implementation focused around the developer experience (DX).

Before joining Reddit, Ryan X. Charles got us off to the right start with his initial work. He had the objective of running as much of the same code in the browsers as on the server, which led us to re-use a lot of work from Fedor Indutny's elliptic library. This led to some dramatic improvements in Bitcore's architecture, so we started modeling its interface around some of these base constructs.

Major Changes in Bitcore 0.8

  • 100% of bitcoind's test vectors ported and passing.
  • Elimination of the TransactionBuilder class, in favor of a much simpler Transaction implementation.
  • In-browser Payment Protocol Support; X.509 in JavaScript – this allows all web wallets to now fully implement the Payment Protocol.

You can view the full list of changes in the 0.8 changelog, including instructions on how to migrate from 0.1.x to 0.8.x.

Future Plans

We have two major milestones planned for the coming months. The following is a brief list of what we're hoping to include.

  • Bitcore 0.9, to include 100% test coverage, full node support, and payment channels.
  • Bitcore 1.0, to include bloom filters, stealth addresses, optimizations of performance critical code, and long-term support for a stable API.

Thanks!

We'd like to give significant thanks to the entire community of Bitcore users and extra appreciation to those who made this release possible; Ryan X. Charles, Fedor Indutny, Manuel Araoaz, Braydon Fuller, Esteban Ordano, Yemel Jardi, Christopher Jeffrey, and Mariano Rodriguez.

With a focus on design and code quality, security, documentation,
and usability, the 0.8 release sets a new course for Bitcore. We hope it will be a positive influence on the development of cryptocurrency-related software in JavaScript.

Get the latest updates to your inbox