{"id":23042305,"url":"https://github.com/openwallet-foundation/credo-ts","last_synced_at":"2025-05-14T10:13:41.737Z","repository":{"id":37477448,"uuid":"222990667","full_name":"openwallet-foundation/credo-ts","owner":"openwallet-foundation","description":"Typescript framework for building decentralized identity and verifiable credential solutions","archived":false,"fork":false,"pushed_at":"2025-04-11T08:51:23.000Z","size":19037,"stargazers_count":294,"open_issues_count":222,"forks_count":214,"subscribers_count":28,"default_branch":"main","last_synced_at":"2025-04-14T21:37:18.636Z","etag":null,"topics":["aries-framework","aries-framework-javascript","cheqd","credo","decentralized-identity","did","didcomm","hyperledger-aries","hyperledger-indy","openid4vc","react-native","sd-jwt-vc","self-sovereign-identity","trust-over-ip","typescript","w3c-vc"],"latest_commit_sha":null,"homepage":"https://credo.js.org","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openwallet-foundation.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-11-20T17:23:33.000Z","updated_at":"2025-04-11T08:50:52.000Z","dependencies_parsed_at":"2023-12-21T11:03:33.775Z","dependency_job_id":"66de1780-bba1-45d7-afe1-5560f35761fc","html_url":"https://github.com/openwallet-foundation/credo-ts","commit_stats":{"total_commits":1038,"total_committers":77,"mean_commits":"13.480519480519481","dds":0.581888246628131,"last_synced_commit":"5a8f536d6dc73f84527c66e61565438702b2b346"},"previous_names":["openwallet-foundation/agent-framework-javascript","hyperledger/aries-framework-javascript","openwallet-foundation/credo-ts"],"tags_count":889,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openwallet-foundation%2Fcredo-ts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openwallet-foundation%2Fcredo-ts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openwallet-foundation%2Fcredo-ts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openwallet-foundation%2Fcredo-ts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openwallet-foundation","download_url":"https://codeload.github.com/openwallet-foundation/credo-ts/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248965698,"owners_count":21190658,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aries-framework","aries-framework-javascript","cheqd","credo","decentralized-identity","did","didcomm","hyperledger-aries","hyperledger-indy","openid4vc","react-native","sd-jwt-vc","self-sovereign-identity","trust-over-ip","typescript","w3c-vc"],"created_at":"2024-12-15T20:24:23.197Z","updated_at":"2025-05-14T10:13:41.729Z","avatar_url":"https://github.com/openwallet-foundation.png","language":"TypeScript","funding_links":[],"categories":["🛠 Tools \u0026 Technologies"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cbr /\u003e\n  \u003cimg\n    alt=\"Credo Logo\"\n    src=\"https://raw.githubusercontent.com/openwallet-foundation/credo-ts/c7886cb8377ceb8ee4efe8d264211e561a75072d/images/credo-logo.png\"\n    height=\"250px\"\n  /\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003e\u003cb\u003eCredo\u003c/b\u003e\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n  \u003cimg\n    alt=\"Pipeline Status\"\n    src=\"https://github.com/openwallet-foundation/credo-ts/workflows/Continuous%20Integration/badge.svg?branch=main\"\n  /\u003e\n  \u003ca href=\"https://codecov.io/gh/openwallet-foundation/credo-ts/\"\n    \u003e\u003cimg\n      alt=\"Codecov Coverage\"\n      src=\"https://img.shields.io/codecov/c/github/openwallet-foundation/credo-ts/coverage.svg?style=flat-square\"\n  /\u003e\u003c/a\u003e\n  \u003ca\n    href=\"https://raw.githubusercontent.com/openwallet-foundation/credo-ts/main/LICENSE\"\n    \u003e\u003cimg\n      alt=\"License\"\n      src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\"\n  /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.typescriptlang.org/\"\n    \u003e\u003cimg\n      alt=\"typescript\"\n      src=\"https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg\"\n  /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr /\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#quickstart\"\u003eQuickstart\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n  \u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n  \u003ca href=\"#contributing\"\u003eContributing\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n  \u003ca href=\"#license\"\u003eLicense\u003c/a\u003e \n\u003c/p\u003e\n\nCredo is a framework written in TypeScript for building **decentralized identity solutions** that aims to be compliant and **interoperable with identity standards across the world**. Credo is agnostic to any specific exchange protocol, credential format, signature suite or did method, but currently mainly focuses on alignment with [OpenID4VC](https://openid.net/sg/openid4vc/), [DIDComm](https://identity.foundation/didcomm-messaging/spec/) and [Hyperledger Aries](https://hyperledger.github.io/aries-rfcs/latest/).\n\n## Quickstart\n\nDocumentation on how to get started with Credo can be found at https://credo.js.org/\nDeepWiki AI-generated documentation on Credo can be found at https://deepwiki.com/openwallet-foundation/credo-ts\n\n## Features\n\nSee [Supported Features](https://credo.js.org/guides/features) on the Credo website for a full list of supported features.\n\n- 🏃 **Platform agnostic** - out of the box support for Node.JS and React Native\n- 🔒 **DIDComm and AIP** - Support for [DIDComm v1](https://hyperledger.github.io/aries-rfcs/latest/concepts/0005-didcomm/), and both v1 and v2 of the [Aries Interop Profile](https://github.com/hyperledger/aries-rfcs/blob/main/concepts/0302-aries-interop-profile/README.md).\n- 🛂 **Extendable [DID](https://www.w3.org/TR/did-core/) resolver and registrar** - out of the box support for `did:web`, `did:key`, `did:jwk`, `did:peer`, `did:sov`, `did:indy` and `did:cheqd`.\n- 🔑 **[OpenID4VC](https://openid.net/sg/openid4vc/)** - support for [OpenID for Verifiable Credential Issuance](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html), [OpenID for Verifiable Presentations](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html) and [Self-Issued OpenID Provider v2](https://openid.net/specs/openid-connect-self-issued-v2-1_0.html).\n- 🪪 **Multiple credential formats** - [W3C Verifiable Credential Data Model v1.1](https://www.w3.org/TR/vc-data-model/), [SD-JWT VCs](https://www.ietf.org/archive/id/draft-ietf-oauth-sd-jwt-vc-03.html), and [AnonCreds](https://hyperledger.github.io/anoncreds-spec/).\n- 🏢 **Multi-tenant** - Optional multi-tenant module for managing multiple tenants under a single agent.\n\n### Packages\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth\u003e\u003cb\u003ePackage\u003c/b\u003e\u003c/th\u003e\n    \u003cth\u003e\u003cb\u003eVersion\u003c/b\u003e\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/core\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/core\"\u003e\n        \u003cimg alt=\"@credo-ts/core version\" src=\"https://img.shields.io/npm/v/@credo-ts/core\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/node\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/node\"\u003e\n        \u003cimg alt=\"@credo-ts/node version\" src=\"https://img.shields.io/npm/v/@credo-ts/node\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/react-native\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/react-native\"\u003e\n        \u003cimg alt=\"@credo-ts/react-native version\" src=\"https://img.shields.io/npm/v/@credo-ts/react-native\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/indy-vdr\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/indy-vdr\"\u003e\n        \u003cimg alt=\"@credo-ts/indy-vdr version\" src=\"https://img.shields.io/npm/v/@credo-ts/indy-vdr\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/cheqd\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/cheqd\"\u003e\n        \u003cimg alt=\"@credo-ts/cheqd version\" src=\"https://img.shields.io/npm/v/@credo-ts/cheqd\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e  \n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/askar\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/askar\"\u003e\n        \u003cimg alt=\"@credo-ts/askar version\" src=\"https://img.shields.io/npm/v/@credo-ts/askar\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/anoncreds\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/anoncreds\"\u003e\n        \u003cimg alt=\"@credo-ts/anoncreds version\" src=\"https://img.shields.io/npm/v/@credo-ts/anoncreds\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/openid4vc\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/openid4vc\"\u003e\n        \u003cimg alt=\"@credo-ts/openid4vc version\" src=\"https://img.shields.io/npm/v/@credo-ts/openid4vc\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n   \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/action-menu\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/action-menu\"\u003e\n        \u003cimg alt=\"@credo-ts/action-menu version\" src=\"https://img.shields.io/npm/v/@credo-ts/action-menu\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n    \u003ctd\u003e@credo-ts/question-answer\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/question-answer\"\u003e\n        \u003cimg alt=\"@credo-ts/question-answer version\" src=\"https://img.shields.io/npm/v/@credo-ts/question-answer\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/tenants\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/tenants\"\u003e\n        \u003cimg alt=\"@credo-ts/tenants version\" src=\"https://img.shields.io/npm/v/@credo-ts/tenants\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e@credo-ts/drpc\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/drpc\"\u003e\n        \u003cimg alt=\"@credo-ts/drpc version\" src=\"https://img.shields.io/npm/v/@credo-ts/drpc\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cs\u003e@aries-framework/indy-sdk\u003c/s\u003e (deprecated, unmaintained after 0.4.x)\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@aries-framework/indy-sdk\"\u003e\n        \u003cimg alt=\"@aries-framework/indy-sdk version\" src=\"https://img.shields.io/npm/v/@aries-framework/indy-sdk\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cs\u003e@aries-framework/anoncreds-rs\u003c/s\u003e (deprecated and combined with \u003ccode\u003e@credo-ts/anoncreds\u003c/code\u003e)\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@aries-framework/anoncreds-rs\"\u003e\n        \u003cimg alt=\"@aries-framework/anoncreds-rs version\" src=\"https://img.shields.io/npm/v/@aries-framework/anoncreds-rs\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003cs\u003e@credo-ts/openid4vc-client\u003c/s\u003e (deprecated in favour of \u003ccode\u003e@credo-ts/openid4vc\u003c/code\u003e)\u003c/td\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://npmjs.com/package/@credo-ts/openid4vc-client\"\u003e\n        \u003cimg alt=\"@credo-ts/openid4vc-client version\" src=\"https://img.shields.io/npm/v/@credo-ts/openid4vc-client\"/\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Demo\n\nTo get to know the Credo issuance and verification flow, we built a demo to walk through it yourself together with agents Alice and Faber.\n\n- OpenID4VC and SD-JWT VC demo in the [`/demo-openid`](/demo-openid) directory.\n- DIDComm and AnonCreds demo in the [`/demo`](/demo) directory.\n\n## Contributing\n\nIf you would like to contribute to the framework, please read the [Framework Developers README](/DEVREADME.md) and the [CONTRIBUTING](/CONTRIBUTING.md) guidelines. These documents will provide more information to get you started!\n\nThere are regular community working groups to discuss ongoing efforts within the framework, showcase items you've built with Credo, or ask questions. See [Meeting Information](https://github.com/openwallet-foundation/credo-ts/wiki/Meeting-Information) for up to date information on the meeting schedule. Everyone is welcome to join!\n\nWe welcome you to join our mailing list and Discord channel. See the [Wiki](https://github.com/openwallet-foundation/credo-ts/wiki/Communication) for up to date information.\n\n## License\n\nOpenWallet Foundation Credo is licensed under the [Apache License Version 2.0 (Apache-2.0)](/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenwallet-foundation%2Fcredo-ts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenwallet-foundation%2Fcredo-ts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenwallet-foundation%2Fcredo-ts/lists"}