Async blockchain nodes interacting tool with ORM-like api.
Project description
Async blockchain nodes interacting tool with ORM-like api
Documentation
•
Releases
Rationale
There are a lots of cryprocurrencies and many of them maintain their own blockchain. Essentially, blockchain is a database, therefore you can interact with it in the same way as with the ordinary database. If you follow how the database interacting tools evolved, you can see that at low-level there are database adapters (such as psycopg2, pymongo, etc.) on top of which are built more abstract and convenient ORMs/ODMs (sqlalchemy, mongo-engine, etc.) Blockchain technology, that are still in its infancy, really lacks similar tools for developers. The goal of this project is to become such the tool. It provides both low-level adapters and high-level ORM-like API for interacting with blockchain node. Also, it's worth clarifying, that ordinary databases have already reached stable APIs unlike blockchain nodes that just provide scattered JSON RPC or/and other non-standard API. OBM is trying to do typically things in universal way. Thereby standardization and unification becomes the second project goal.
Installation
pip install obm
Requirements
- Python 3.8 or higher.
- (optional) bitcoin-core node
- (optional) geth node
Features
- BTC (bitcoin-core) and ETH (geth) support
- Implemented :bash:
list-transactions
for ETH - Unified API for sending/receiving transactions, addresses creation and fee estimating
In future
- support of: ETH, ETC, DASH, BCH, LTC, ZEC, XEM, XRP, etc.
Is OMB production ready?
The project is now under active development. Use at your own risk and lock dependency version on minore.
Contributing
See CONTRIBUTING.md for instructions.
Support the developer
Sponsors
Special thanks for Swapzilla project that paid me part of the development.
You can also become the sponsor and get priority development of the features you require. Just contact me.
Buy me a beer
BTC 179B1vJ8LvAQ2r9ABNhp6kDE2yQZfm1Ng3
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.