/py-ipld

Python implementation of the IPLD specification.

Primary LanguagePythonMIT LicenseMIT

py-ipld

Python implementation of the IPLD specification.

Status

For TODOs, see: #1 <#1>

Installation

$ pip install ipld

Usage

In the Python REPL:

>>> from ipld import marshal, multihash, unmarshal
>>>
>>> file = {
... 'name': 'hello.txt',
... 'size': 11
... }
>>>
>>> marshalled = marshal(file)
>>>
>>> multihash(marshalled)
'QmQtX5JVbRa25LmQ1LHFChkXWW5GaWrp7JpymN4oPuBSmL'
>>>
>>> unmarshal(marshal(file)) == file
True

That's it. No readthedocs, no private methods 💥.

Tests

Only relevant, if you want to help developing.

$ pip install -e .[dev]
$ py.test -v

Acknowledgements

Thanks to the contributors over at BigchainDB for letting me take their setup structure.