{ "info": { "author": "AustEcon", "author_email": "AustEcon0922@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython" ], "description": "Polyglot: Bitcoin protocols made easy\n=====================================\nDocumentation: https://austecon.github.io/polyglot/\nPowered by BitSV: https://github.com/AustEcon/bitsv\n\nPowered by BitSV: https://github.com/AustEcon/bitsv\n\n.. image:: https://img.shields.io/travis/AustEcon/polyglot.svg?branch=master&style=flat-square\n :target: https://travis-ci.org/AustEcon/polyglot\n\n.. image:: https://img.shields.io/pypi/pyversions/bitsv.svg?style=flat-square\n :target: https://pypi.org/project/bitsv\n\n.. image:: https://img.shields.io/badge/license-MIT-orange.svg?style=flat-square\n :target: https://en.wikipedia.org/wiki/MIT_License\n\n\n------\n\nPolyglot is `designed to be `_\nBitcoin SV's most intuitive way to interact with a myriad of metanet protocols through *python* -\na match made in heaven.\n\nThe style of this library is inspired by ofek's library `bit `_\n(`bitsv's `_ predecessor)\n\n**Here are some examples:**\n\nPolyglot extends bitsv with the **polyglot.Upload** class, which inherits all of the properties of\nthe **bitsv.PrivateKey** class such as checking balance, unspends, sending payments etc.\n\n\n1. Upload an image < 100kb with b:// protocol (https://github.com/unwriter/B):\n\n.. code-block:: python\n\n >>> import polyglot\n >>> uploader = polyglot.Upload('your private key goes here in WIF format')\n >>> # Optional parameters shown for completeness are populated from the file path by default\n >>> uploader.upload_b(file, media_type=None, encoding=None, file_name=None)\n\nSee image here: https://bico.media/252ea6d5a4a4bfc956518403f6e5aa2ced1c2590d1120cd75341e0233d1b06e3\n\nThis works for a wide range of media types.\n\n2. Upload large multimedia > 100kb with bcat:// protocol (https://bcat.bico.media/):\n\n.. code-block:: python\n\n >>> file = \"C:/Users/username/Pictures/BSV_banner.jpg\"\"\n >>> uploader.upload_bcat(file)\n\nSee image here: https://bico.media/be8b6a79e66934d3419265fbf3295d03e331a4c08098ae7f817a7592ffaedd2b\n\nPlease note: For BCAT protocol, it is very important to have an adequate number of \"fresh\" utxos with 1 confirmation to generate the parts. To do this see #3 Utilities (next).\n\n3. Basic Utilities\n\nSome basic utilities are included for working with utxo splitting and manually extracting the media type / handling of the file based on the file path (with extension) - to cover some potentially more advanced useage patterns of the B and BCAT protocols.\n\n.. code-block:: python\n\n >>> uploader.get_media_type_for_file_name(file) #--> media_type\n >>> uploader.get_encoding_for_file_name(file) #--> encoding,\n >>> uploader.get_filename(path) #--> file_name.ext)\n\nBut additionally:\n\n.. code-block:: python\n\n >>> uploader.get_largest_utxo(self) #--> largest utxo (for splitting)\n >>> uploader.split_biggest_utxo(self) #--> splits utxo into 100000 satoshi amounts\n >>> uploader.filter_utxos_for_bcat(self) #-- > filters utxos with 0 conf or too low amount to handle a 100kb tx\n >>> get_file_ext(file) #--> .ext\n >>> calculate_txid(rawtx) #--> txid\n\n\n\nFeatures\n--------\n\nCurrently Working:\n~~~~~~~~~~~~~~~~~~\n\n1. Uploading\n~~~~~~~~~~~~\n- B:// (for multimedia up to 100kb) - https://github.com/unwriter/B\n- BCAT:// (for multimedia up to 310mb uncompressed, 110GB with nested gzip) - https://bcat.bico.media/\n\n2. UTXO management\n~~~~~~~~~~~~~~~~~~\n- Utilities for splitting / selecting UTXOs for a single private key - especially for use in BCAT protocol.\n- Bip32 level UTXO management is also planned\n\nPlanned:\n~~~~~~~~\n\n1. HTML reference converter\n~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nA Class that will allow for easy conversion of metanet style referencing:\n\n- B:// (ref. by txid)\n- C:// (ref. by sha256 hash of content)\n- D:// (ref. by dynamic state - linked to identity system)\n\nTo localhost paths or mainstream internet urls as well as toggling it all back and forth.\n\nThis will allow quick iteration of building a web application on the local machine but also rapid conversion to b://, c:// d:// etc. referencing styles for deployment to the blockchain.\n\nWould just need a dictionary of {path : B:// reference} pairs for example to be swapped back and forth. Many other features in mind (possibly for another repository).\n\n2. Downloading\n~~~~~~~~~~~~~~\nShould be able to specify content by:\n\n- B:// (ref. by txid)\n- C:// (ref. by sha256 hash of content)\n- D:// (ref. by dynamic state - linked to identity system)\n- Should work for content uploaded via BCAT\n\nAnd have it be downloaded.\n\nIf it is a static html page then should optionally allow retreival of all referenced content to reconstruct the entire webpage on the local machine.\n\n3. Identity protocols (Money Button, AIP etc.):\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\nI would like to add a very simple interface for interacting with\n- AIP (https://github.com/BitcoinFiles/AUTHOR_IDENTITY_PROTOCOL)\n- other ID protocols (e.g. Ryan X. Charles of Money Button has been working hard on this area)\n\n4. \"Linking / mapping / database functions\":\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n- MAP protocol for linking all kinds of different protocols together (powerful)\n- (maybe) A.N.N.E. protocol by Mr Scatmann - https://medium.com/@bsmith12251960/a-n-n-e-the-alpha-testing-begins-545f809c6129\n\nInstallation\n------------\n\nPolyglot is distributed on `PyPI` as a universal wheel and is available on Linux/macOS\nand Windows and supports Python 3.6+. ``pip`` >= 8.1.2 is required.\n\n.. code-block:: bash\n\n $ pip install polyglot-bitcoin # pip3 if pip is Python 2 on your system.\n\n\nCredits\n-------\n- CoinGeek / nChain / Bitcoin Association for putting on an amazing hackathon from which this project was born!\n\nDonate\n--------\n- Made by $AustEcon (Handcash handle)", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/AustEcon/polyglot/tarball/0.0.1", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/AustEcon/polyglot", "keywords": "polyglot,metanet,bitcoin sv,bsv,bitsv,cryptocurrency,payments,tools,wallet,bitcoin", "license": "MIT", "maintainer": "AustEcon", "maintainer_email": "AustEcon0922@gmail.com", "name": "polyglot-bitcoin", "package_url": "https://pypi.org/project/polyglot-bitcoin/", "platform": "", "project_url": "https://pypi.org/project/polyglot-bitcoin/", "project_urls": { "Download": "https://github.com/AustEcon/polyglot/tarball/0.0.1", "Homepage": "https://github.com/AustEcon/polyglot" }, "release_url": "https://pypi.org/project/polyglot-bitcoin/0.0.1/", "requires_dist": null, "requires_python": "", "summary": "Bitcoin protocols made easy.", "version": "0.0.1" }, "last_serial": 5400253, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "912609fd19024db832251bea3f7b5eba", "sha256": "b5098a46eb4539b9d58fa6bd34c221381743b730a5ea12ee8fbc5525141dfd4b" }, "downloads": -1, "filename": "polyglot-bitcoin-0.0.1.tar.gz", "has_sig": false, "md5_digest": "912609fd19024db832251bea3f7b5eba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7886, "upload_time": "2019-06-14T12:03:45", "url": "https://files.pythonhosted.org/packages/76/b7/5813591209bf1d7025fe0a48123a528ba57d752d56388622426aa6777daf/polyglot-bitcoin-0.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "912609fd19024db832251bea3f7b5eba", "sha256": "b5098a46eb4539b9d58fa6bd34c221381743b730a5ea12ee8fbc5525141dfd4b" }, "downloads": -1, "filename": "polyglot-bitcoin-0.0.1.tar.gz", "has_sig": false, "md5_digest": "912609fd19024db832251bea3f7b5eba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7886, "upload_time": "2019-06-14T12:03:45", "url": "https://files.pythonhosted.org/packages/76/b7/5813591209bf1d7025fe0a48123a528ba57d752d56388622426aa6777daf/polyglot-bitcoin-0.0.1.tar.gz" } ] }