Py Cid Save Abandoned

Self-describing content-addressed identifiers for distributed systems implementation in Python

Project README

⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️

2022-09-15:

This repo is not maintained.

If someone would like to fork it and support it, IPLD stewards are happy to point to a supported fork. Please open an issue in ipld/ipld requesting this of ask in #ipld in IPFS Discod, Matrix, or FIL Slack.

⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️

CID (Content IDentifier)

.. image:: https://img.shields.io/pypi/v/py-cid.svg :target: https://pypi.python.org/pypi/py-cid

.. image:: https://img.shields.io/travis/ipld/py-cid.svg?branch=master :target: https://travis-ci.org/ipld/py-cid?branch=master

.. image:: https://codecov.io/gh/ipld/py-cid/branch/master/graph/badge.svg :target: https://codecov.io/gh/ipld/py-cid

.. image:: https://readthedocs.org/projects/py-cid/badge/?version=stable :target: https://py-cid.readthedocs.io/en/stable/?badge=stable :alt: Documentation Status

What is CID ?

CID <https://github.com/ipld/cid>_ is a format for referencing content in distributed information systems, like IPFS <https://ipfs.io>. It leverages content addressing <https://en.wikipedia.org/wiki/Content-addressable_storage>, cryptographic hashing <https://simple.wikipedia.org/wiki/Cryptographic_hash_function>, and self-describing formats <https://github.com/multiformats/multiformats>.

It is the core identifier used by IPFS <https://ipfs.io>_ and IPLD <https://ipld.io>_.

CID is a self-describing content-addressed identifier.

It uses cryptographic hashes to achieve content addressing.

It uses several multiformats <https://github.com/multiformats/multiformats>_ to achieve flexible self-description, namely multihash <https://github.com/multiformats/multihash>_ for hashes, multicodec <https://github.com/multiformats/multicodec>_ for data content types, and multibase <https://github.com/multiformats/multibase>_ to encode the CID itself into strings.

Sample Usage

.. code-block:: python

>>> from cid import make_cid
>>> make_cid('QmaozNR7DZHQK1ZcU9p7QdrshMvXqWK6gpu5rmrkPdT3L4')
CIDv0(version=0, codec=dag-pb, multihash=b"\x12 \xb9M'\xb9\x93M>\x08\xa5.R\xd7\xda}\xab\xfa\xc4\x84..")

>>> cid = make_cid('QmaozNR7DZHQK1ZcU9p7QdrshMvXqWK6gpu5rmrkPdT3L4')
>>> print(cid.version, cid.codec, cid.multihash)

>>> print(cid.encode())
QmaozNR7DZHQK1ZcU9p7QdrshMvXqWK6gpu5rmrkPdT3L4

>>> str(cid)
'QmaozNR7DZHQK1ZcU9p7QdrshMvXqWK6gpu5rmrkPdT3L4'

Installation

Stable release


To install CID, run this command in your terminal:

.. code-block:: console

    $ pip install py-cid

This is the preferred method to install CID, as it will always install the most recent stable release.

If you don't have `pip`_ installed, this `Python installation guide`_ can guide
you through the process.

.. _pip: https://pip.pypa.io
.. _Python installation guide: http://docs.python-guide.org/en/latest/starting/installation/

From sources
~~~~~~~~~~~~

The sources for CID can be downloaded from the `Github repo`_.

You can either clone the public repository:

.. code-block:: console

    $ git clone git://github.com/ipld/py-cid

Or download the `tarball`_:

.. code-block:: console

    $ curl  -OL https://github.com/ipld/py-cid/tarball/master

Once you have a copy of the source, you can install it with:

.. code-block:: console

    $ python setup.py install


.. _Github repo: https://github.com/ipld/py-cid
.. _tarball: https://github.com/ipld/py-cid/tarball/master

Other info
==========

* Free software: MIT license
* Documentation: https://py-cid.readthedocs.io.
* Python versions: 3.5, 3.6
Open Source Agenda is not affiliated with "Py Cid" Project. README Source: ipld/py-cid
Stars
34
Open Issues
8
Last Commit
1 year ago
License
MIT
Tags

Open Source Agenda Badge

Open Source Agenda Rating