Ryan X. Charles
11 years ago
1 changed files with 30 additions and 3 deletions
@ -1,4 +1,31 @@ |
|||
bitcore |
|||
======= |
|||
bitcore2 |
|||
======== |
|||
|
|||
Bitcoin library. |
|||
Bitcore 2 is a rewrite of bitcore to satisfy several goals: |
|||
|
|||
1) Support ease-of-use by being internally consistent. It should not be |
|||
necessary to read the source code of a class or function to know how to use it. |
|||
I.e., where in old bitcore a "privkey" might be anything from a buffer to a hex |
|||
string to a key to a private key object, in bitcore 2 "privkey" is the same |
|||
type of object always and everywhere. |
|||
|
|||
2) Have 100% test coverage so that the library is known to be reliable. |
|||
|
|||
3) Library objects have an interface suitable for use with a command-line |
|||
interface and API, in particular having toString, fromString, toObject, |
|||
fromObject methods. |
|||
|
|||
4) All standard features of the bitcoin protocol are implemented and saved in |
|||
lib/. All BIPs are correctly implemented and saved as BIPxx.js in lib/ (since |
|||
that is their standard name). Any non-standard features (such as SINs and |
|||
stealtha addresses) are placed in the lib/expmt/ folder and are accessible at |
|||
bitcore.expmt. Once they are standardized and given a BIP, they are renamed and |
|||
placed in lib/. |
|||
|
|||
5) It is always possible to create a new object without using "new". |
|||
|
|||
6) Compatible with browserify (i.e., using require('bitcore/lib/message') |
|||
should work both in node, and be automatically work in the browser with used in |
|||
conjunction with browserify). |
|||
|
|||
7) Minimize the use of dependencies so that all code can be easily audited. |
|||
|
Loading…
Reference in new issue