This is the monorepo for Galxe Identity protocol, powered by Turborepo. It includes the following packages/apps:
@galxe-identity-protocol/evm-contracts
: a hardhat project of all the evm contracts, including typechain generated TypeScript bindings.@galxe-identity-protocol/sdk
: a TypeScript SDK for everything related to the protocol.@repo/eslint-config
:eslint
configurations (includeseslint-config-next
andeslint-config-prettier
)@repo/typescript-config
:tsconfig.json
s used throughout the monorepo
cli
: a cli tool for managing the protocol, including interacting with the on-chain contracts and type generation.issuer
: a microservice that issues credentials by GRPC request.sstyper
: a fully self-sovereign credential type setup tool.
Developers should use the current LTS version of node. Currently, node v20.11.1. For package users, the SDK is compatible with node v18 and above.
# For nvm users:
nvm install --lts
nvm use --lts
We use corepack for managing package managers.
corepack enable
corepack install # this will install pnpm version specified in package.json
pnpm lint
pnpm build
pnpm test
If you saw build error when building a package that is depending on local packages, try pnpm build
in the root directory first. It is because that dependencies were not built.