Important
As we do not use the DIDKit bindings internally anymore, we have decided to archive their respective repositories. If you are looking for alternatives, our Rust library ssi
(on which DIDKit was built) is still in active deployment, and we have new mobile-focused libraries with sprucekit-mobile
. And as always, you are welcome to fork our repositories.
Check out the DIDKit documentation here.
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.
go get
needs some additional steps in order to work as expected.
Add DIDKit and SSI as submodules to your repo.
$ go get github.com/spruceid/didkit-go
$ git submodule add https://github.com/spruceid/didkit.git extern/didkit
$ git submodule add https://github.com/spruceid/ssi.git extern/ssi
$ git submodule update --init --recursive
DIDKit is written in Rust. To get Rust, you can use Rustup.
$ make -C extern/didkit/lib ../target/test/c.stamp
Replace with the built version of the library.
$ go mod edit -replace=github.com/spruceid/didkit-go=./extern/didkit/lib/didkit-go
Please note: this readme documents an early-stage open-source product ported manually to python, and we are still incorporating feedback from our first comprehensive third-party code audit. These artefacts are presented as functional "betas" for experimentation and to show the direction of the project (inviting proposals for changes of direction, even!). They are not, however, intended for transacting real-world business yet.