Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/animo/oid4vc-ts
OpenID for Verifiable Credentials - TypeScript
https://github.com/animo/oid4vc-ts
Last synced: 3 days ago
JSON representation
OpenID for Verifiable Credentials - TypeScript
- Host: GitHub
- URL: https://github.com/animo/oid4vc-ts
- Owner: animo
- Created: 2024-10-20T06:24:53.000Z (27 days ago)
- Default Branch: main
- Last Pushed: 2024-11-04T17:46:51.000Z (11 days ago)
- Last Synced: 2024-11-04T18:37:54.562Z (11 days ago)
- Language: TypeScript
- Size: 173 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
OpenID for Verifiable Credentials - TypeScript
Powered by
OAuth 2.0
|
OpenID for Verifiable Credential Issuance
|
Supported Environments
|
Contributing
|
License---
## OAuth 2.0 - [`@animo-id/oauth2`](./packages/oauth2)
[![@animo-id/oauth2 version](https://img.shields.io/npm/v/@animo-id/oauth2)](https://npmjs.com/package/@animo-id/oauth2)
An implementation of the [OAuth 2.0 Authorization Framework](https://datatracker.ietf.org/doc/html/rfc6749), including extension specifications.
- [RFC 9126 - OAuth 2.0 Pushed Authorization Requests](https://datatracker.ietf.org/doc/html/rfc9126)
- [OAuth 2.0 for First-Party Applications - Draft 0](hhttps://www.ietf.org/archive/id/draft-ietf-oauth-first-party-apps-00.html)
- [RFC 7636 - Proof Key for Code Exchange by OAuth Public Clients](https://datatracker.ietf.org/doc/html/rfc7636)
- [RFC 9449 - OAuth 2.0 Demonstrating Proof of Possession (DPoP)](https://datatracker.ietf.org/doc/html/rfc9449)
- [RFC 7662 - OAuth 2.0 Token Introspection](https://datatracker.ietf.org/doc/html/rfc7662)
- [RFC 9068 JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens](https://datatracker.ietf.org/doc/html/rfc9068)
- [RFC 8707 - Resource Indicators for OAuth 2.0](https://www.rfc-editor.org/rfc/rfc8707.html)```ts
import {
ResourceServer,
AuthorizationServer,
Oauth2Client,
} from "@animo-id/oauth2";
```## OpenID for Verifiable Credential Issuance - [`@animo-id/oid4vc`](./packages/oid4vci)
[![@animo-id/oid4vci version](https://img.shields.io/npm/v/@animo-id/oid4vci)](https://npmjs.com/package/@animo-id/oid4vci)
An implementation of the [OpenID for Verifiable Credential Issuance](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html) specification.
- Authorization Code Flow and Pre-Authorized Code Flow
- Credential format profiles `vc+sd-jwt`, `mso_mdoc`, `jwt_vc_json`, `jwt_vc_json-ld`, and `ldp_vc` (only object validation, no credential implementation)
- Proof type `jwt`
- Draft 14, with backwards compatibility for draft 13 (ID1), and draft 11
- Support presentation during issuance using Authorization Challenge and OpenID4VP.```ts
import {
Oid4vciIssuer
Oid4vciClient,
} from "@animo-id/oid4vci";
```## Supported Environments
This library is platform agnostic and support Node.JS, React Native and browsers out of the box, as long as it provides an implementation of `URL` and `URLSearchParams`. However because of this it is required to provide some callbacks for simple things like hashing, generate random bytes, etc. If no global `fetch` is available in your environment, this also need to be provided in the callbacks.
## Contributing
Is there something you'd like to fix or add? Great, we love community
contributions! To get involved, please follow our [contribution guidelines](./CONTRIBUTING.md).## License
This project is licensed under the Apache License Version 2.0 (Apache-2.0).