libssl-dev, as well as
build-essential, or equivalent core toolsets if they aren't already installed.
- 3.Then simply run
cargo installfor the given target package:
didkit-cli | didkit-http.
For example, for DIDKit CLI, run:
cargo install didkit-cli
This will add the binary didkit to your Cargo installation (typically ~/.cargo/bin), which can be added to your system's PATH for ease of use.
We do not depend on any Rust nightly features, so our installation instructions assume the most recent
stableversion; be sure to switch the installation defaults to
nightlyif the calling application or forked source code does depend on them.
git clone https://github.com/spruceid/didkit && cd didkit
git clone https://github.com/spruceid/ssi ../ssi --recurse-submodules
This will give you the DIDKit CLI and HTTP server executables located at
target/debug/didkit-http, respectively. You can also build and install DIDKit's components separately. Building the FFI libraries will require additional dependencies. See the corresponding readmes linked below for more info.
Both the CLI and HTTP server are containerised and available under
docker login ghcr.io -u USERNAME --password-stdin
You can use the images like CLIs:
docker run ghcr.io/spruceid/didkit-cli:latest --help
docker run --init -p 8080 ghcr.io/spruceid/didkit-http:latest --port 8080
Note: You can pass JWKs either by sharing a volume with
docker run --volume, or by passing the JWK directly with
docker run -e JWK=$MY_JWKor
docker run didkit-http --jwk $MY_JWK.
Then the images can be built with:
docker build -f Dockerfile-cli . -t didkit-cli
docker build -f Dockerfile-http . -t didkit-http
And to use them, replace
While many of the DIDKit interfaces can be installed as libraries via each language's dedicated package manager, they can also be built manually. For instructions, see the "Installation" section of each interface's dedicated page in the section to the left.