This repository hosts the codebase for CREDEBL SSI Platform backend.
See: https://docs.docker.com/engine/install/
Version: >= 18.17.0
See: https://nodejs.dev/en/learn/how-to-install-nodejs/
npm i @nestjs/cli@latest
Start the PostgreSQL service using Docker:
docker run --name credebl-postgres \
-p 5432:5432 \
-e POSTGRES_USER=credebl \
-e POSTGRES_PASSWORD=changeme \
-e POSTGRES_DB=credebl \
-v credebl_pgdata:/var/lib/postgresql/data \
-d postgres:16
cd ./libs/prisma-service/prisma
npx prisma generate
npx prisma db push
cd ./libs/prisma-service
npx prisma db seed
NATS is used for inter-service communication. The only prerequisite here is to install Docker.
docker pull nats:latest
The docker-compose.yml
file is available in the root folder.
docker-compose up
npm install
Configure environment variables in .env
before you start the API Gateway.
You can optionally use the --watch
flag during development/testing.
nest start [--watch]
For example, to start the organization service
microservice, run the following command in a separate terminal window:
nest start organization [--watch]
Start all the microservices one after another in separate terminal windows:
nest start user [--watch]
nest start ledger [--watch]
nest start connection [--watch]
nest start issuance [--watch]
nest start verification [--watch]
nest start agent-provisioning [--watch]
nest start agent-service [--watch]
To access microservice endpoints using the API Gateway, navigate to:
http://localhost:5000/api
The CREDEBL platform is built by AYANWORKS team. For the core SSI capabilities, it leverages the great work from multiple open-source projects such as Hyperledger Aries, Bifold, Asker, Indy, etc.
Pull requests are welcome! Please read our contributions guide and submit your PRs. We enforce developer certificate of origin (DCO) commit signing — guidance on this is available. We also welcome issues submitted about problems you encounter in using CREDEBL.