Features | Getting started | Contributing | License
Aries Framework JavaScript is a framework written in TypeScript for building SSI Agents and DIDComm services that aims to be compliant and interoperable with the standards defined in the Aries RFCs.
- 🏃 Runs in React Native & Node.JS
- 🔒 DIDComm v1 support
- 🌎 Aries Interop Profile v1 & v2 support
- With support for Chat, Mediator Coordination, Indy Credentials & and JSON-LD Credentials sub-targets
did:sov
,did:web
,did:key
anddid:peer
, with pluggable interface for registering custom did methods.- OpenID for Verifiable Credential Issuance (only receiving JSON-LD credentials for now)
- 💡 Smart Auto Acceptance of Connections, Credentials and Proofs
- 🏢 Multi tenant module for managing multiple tenants under a single agent.
Documentation on how to get started with Aries Framework JavaScript can be found at https://aries.js.org
To get to know the AFJ flow, we built a demo to walk through it yourself together with agents Alice and Faber.
Although Aries Framework JavaScript tries to follow the standards as described in the Aries RFCs as much as possible, some features in AFJ slightly diverge from the written spec. Below is an overview of the features that diverge from the spec, their impact and the reasons for diverging.
Feature | Impact | Reason |
---|---|---|
Support for imageUrl attribute in connection invitation and connection request |
Properties that are not recognized should be ignored, meaning this shouldn't limit interoperability between agents. As the image url is self-attested it could give a false sense of trust. Better, credential based, method for visually identifying an entity are not present yet. | Even though not documented, almost all agents support this feature. Not including this feature means AFJ is lacking in features in comparison to other implementations. |
Revocation Notification v1 uses a different thread_id format ( indy::<revocation_registry_id>::<credential_revocation_id> ) than specified in the Aries RFC |
Any agents adhering to the revocation notification v1 RFC will not be interoperable with Aries Framework Javascript. However, revocation notification is considered an optional portion of revocation, therefore this will not break core revocation behavior. Ideally agents should use and implement revocation notification v2. | Actual implementations (ACA-Py) of revocation notification v1 so far have implemented this different format, so this format change was made to remain interoperable. |
If you would like to contribute to the framework, please read the Framework Developers README and the CONTRIBUTING guidelines. These documents will provide more information to get you started!
The Aries Framework JavaScript call takes place every week at Thursday, 6AM Pacific Time. See World Time Buddy for the time in your timezone. The meeting is held on Zoom. This meeting is for contributors to groom and plan the backlog, and discuss issues. Meeting agendas and recordings can be found here. Feel free to join!
Hyperledger Aries Framework JavaScript is licensed under the Apache License Version 2.0 (Apache-2.0).