Skip to content

ofek/bit

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
bit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Bit: Bitcoin made easy.

https://img.shields.io/pypi/v/bit.svg?style=flat-square https://img.shields.io/travis/ofek/bit.svg?branch=master&style=flat-square https://img.shields.io/codecov/c/github/ofek/bit.svg?style=flat-square https://img.shields.io/pypi/pyversions/bit.svg?style=flat-square https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square

Bit is Python's fastest Bitcoin library and was designed from the beginning to feel intuitive, be effortless to use, and have readable source code. It is heavily inspired by Requests and Keras.

Bit is so easy to use, in fact, you can do this:

>>> from bit import Key
>>>
>>> my_key = Key(...)
>>> my_key.get_balance('usd')
'12.51'
>>>
>>> # Let's donate!
>>> outputs = [
>>>     # Wikileaks
>>>     ('1HB5XMLmzFVj8ALj6mfBsbifRoD4miY36v', 0.0035, 'btc'),
>>>     # Internet Archive
>>>     ('1Archive1n2C579dMsAu3iC6tWzuQJz8dN', 190, 'jpy'),
>>>     # The Pirate Bay
>>>     ('129TQVAroeehD9fZpzK51NdZGQT4TqifbG', 3, 'eur'),
>>>     # xkcd
>>>     ('14Tr4HaKkKuC1Lmpr2YMAuYVZRWqAdRTcr', 2.5, 'cad')
>>> ]
>>>
>>> my_key.send(outputs)
'9f59f5c6757ec46fdc7440acbeb3920e614c8d1d247ac174eb6781b832710c1c'

Here is the transaction https://blockchain.info/tx/9f59f5c6757ec46fdc7440acbeb3920e614c8d1d247ac174eb6781b832710c1c.

Features

  • Python's fastest available implementation (100x faster than closest library)
  • Seamless integration with existing server setups
  • Supports keys in cold storage
  • Fully supports 25 different currencies
  • First class support for storing data in the blockchain
  • Deterministic signatures via RFC 6979
  • Access to the blockchain (and testnet chain) through multiple APIs for redundancy
  • Exchange rate API, with optional caching
  • Optimal transaction fee API, with optional caching
  • Compressed public keys by default
  • Multiple representations of private keys; WIF, PEM, DER, etc.
  • Legacy P2PKH and Segwit nested-P2WPKH transactions
  • Legacy P2SH and Segwit nested-P2WSH transactions

If you are intrigued, continue reading. If not, continue all the same!

Installation

Bit is distributed on PyPI as a universal wheel and is available on Linux/macOS and Windows and supports Python 3.5+ and PyPy3.5-v5.7.1+. pip >= 8.1.2 is required.

$ pip install bit

Documentation

Docs are hosted by Github Pages and are automatically built and published by Travis after every successful commit to Bit's master branch.

Credits