Skip to content

GlugovGrGlib/didkit-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Important

SpruceID does not use the DIDKit bindings internally anymore, and they decided to archive their respective repositories. Considering the Open edX project dependency on didkit-python bindings for the verifiable credentials support and requires VC 2.0 support, a decision was made to fork the solution, implement minor module updates and publish under the name openedx-didkit as a drop-in replacement for didkit PyPI package.

PyPI version

Check out the DIDKit documentation here.

DIDKit Python

DIDKit provides Verifiable Credential and Decentralized Identifier functionality across different platforms. It was written primarily in Rust due to Rust's expressive type system, memory safety, simple dependency web, and suitability across different platforms including embedded systems. DIDKit embeds the ssi library, which contains the core functionality.

Installation and Usage

DIDKit is available on PyPI.

You can install it globally with:

$ pip install -U didkit

asyncio is required, meaning you will need Python 3.7 or above.

Build from Source

$ maturin build

You can install maturin with pip install maturin.

Now the wheel should be in the target directory.

Custom Builds

To enable or disable certain features of DIDKit, or use different cryptography backends, you will need edit the Cargo.toml.

Development

When adding a function or changing the signature of an existing one, make sure to reflect the changes in the stub file. This is important for static analysis and IDE support. (This will be automated in the future.)

Test

poetry install
poetry run maturin develop
poetry run pytest

About

Python bindings for DIDKit.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 65.0%
  • Python 35.0%