---
tags: AFJ
---
# AFJ Feature Overview
> The below contribution is a joint effort between Northern Block and Animo.
## Platform Support
| Platform | Supported | Notes |
| -------- | --------- | ------------------------------------- |
| iOS | ✅ | Runs in React Native |
| Android | ✅ | Runs in React Native |
| Server | ✅ | Runs in Node.JS |
| Desktop | ⚠️ | Runs in Electron (still WIP) |
| Browser | ❌ | Indy cannot run in browser due to ZMQ |
## Agent Types
| Role | Supported | Notes |
| -------- | --------- | --------------------------------------------- |
| Issuer | ⚠️ | Only in Node.JS, doesn't work in React Native |
| Holder | ✅ | |
| Verifier | ✅ | |
| Mediator | ✅ | Supports both mediator and mediatee role |
## AIP Support
| AIP Version | Supported | Notes |
| ----------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| AIP 1.0 | ⚠️ | Missing support for issuing revocable indy credentials |
| AIP 2.0 | 🚧 | Implementation in progress |
## Credential Types
| Credential Type | Supported | Notes |
| ---------------- | --------- | ----- |
| Indy Credentials | ✅ | |
| W3C Credentials | 🚧 | |
## DID Methods
| Method | Supported | Notes |
| ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `did:sov` | ⚠️ | `did:sov` DIDs are supported for indy credential based actions, not as generic did capabilities. Using public DIDs for creating connections is not supported. |
| `did:peer` | ✅ | Indy based `did:peer` dids are used for DIDComm, however the DIDs are not prefixed with `did:peer` yet and are not following the conventions from [RFC 0627: Static Peer DIDs](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0627-static-peer-dids) |
## Wallet Types
| Wallet types | Supported | Notes |
| -- | -- | -- |
| Indy SDK | ✅ | Indy SDK provides storage, crypto, indy credentials and indy ledger support |
| Aries Askar | 🚧 | |
## Miscellaneous Features
| Feature | Supported | Note |
| ----------------------------------------------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| Connectionless (non OOB protocol) | ✅ | Only for issue credential starting with credential offer and present proof starting with proof request |
| Multi use invitations | ✅ | |
| Multi ledger support (with automatic detection) | ✅ | [Github Issue](https://github.com/hyperledger/aries-framework-javascript/issues/395) |
| Invitations using public did | ❌ | [Github Issue](https://github.com/hyperledger/aries-framework-javascript/issues/84) |
| Persistence of mediated messages | ❌ | Messages are currently stored in memory ([Github Issue](https://github.com/hyperledger/aries-framework-javascript/issues/472)) |
| Implicit pickup of messages in role of mediator | ❌ | Only support explicit pickup of message using pickup protocol ([Github Issue](https://github.com/hyperledger/aries-framework-javascript/issues/378)) |
| Revocable Indy Credential | ⚠️ | Only receiving, providing and verifying. Issuing not supported |
| Wallet Import & Export | ✅ | [Github Issue](https://github.com/hyperledger/aries-framework-javascript/issues/175) |
| Multitenancy | 🚧 | |
| Postgres wallet support | ✅ | |
## Supported RFCs (AIP 1.0 and 2.0)
| RFC | Supported | Note |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | --------------------------------------------------------- |
| [0003-protocols](https://github.com/hyperledger/aries-rfcs/tree/9b7ab9814f2e7d1108f74aca6f3d2e5d62899473/concepts/0003-protocols) | ✅ | |
| [0004-agents](https://github.com/hyperledger/aries-rfcs/tree/f1e420f76abd9ff4af5c15d375fa6cf8c2cacb33/concepts/0004-agents) | ✅ | |
| [0005-didcomm](https://github.com/hyperledger/aries-rfcs/tree/f1e420f76abd9ff4af5c15d375fa6cf8c2cacb33/concepts/0005-didcomm) | ✅ | |
| [0008-message-id-and-threading](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0008-message-id-and-threading) | ✅ | |
| [0011-decorators](https://github.com/hyperledger/aries-rfcs/tree/965a975f953d72e370d2b6fb28eec538ec756c6d/concepts/0011-decorators) | ✅ | |
| [0015-acks](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0015-acks) | ✅ | |
| [0017-attachments](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0017-attachments) | ✅ | Signed attachments not supported |
| [0019-encryption-envelope](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0019-encryption-envelope) | ✅ | |
| [0020-message-types](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0020-message-types) | ✅ | |
| [0023-did-exchange](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0023-did-exchange) | ✅ | |
| [0025-didcomm-transports](https://github.com/hyperledger/aries-rfcs/tree/b490ebe492985e1be9804fc0763119238b2e51ab/features/0025-didcomm-transports) | ✅ | Support for HTTP and WebSockets |
| [0035-report-problem](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0035-report-problem) | ✅ | |
| [0036-issue-credential](https://github.com/hyperledger/aries-rfcs/tree/bb42a6c35e0d5543718fb36dd099551ab192f7b0/features/0036-issue-credential) | ⚠️ | Issuing revocable credentials not supported |
| [0037-present-proof](https://github.com/hyperledger/aries-rfcs/tree/4fae574c03f9f1013db30bf2c0c676b1122f7149/features/0037-present-proof) | ✅ | Revocation not supported. |
| [0044-didcomm-file-and-mime-types](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0044-didcomm-file-and-mime-types) | ✅ | |
| [0047-json-LD-compatibility](https://github.com/hyperledger/aries-rfcs/tree/53c2e7accc8394c9c7b09563c0eec3c564c133c6/concepts/0047-json-ld-compatibility) | ✅ | |
| [0046-mediators-and-relays](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0046-mediators-and-relays) | ✅ | |
| [0048-trust-ping](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0048-trust-ping) | ✅ | |
| [0050-wallets](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0050-wallets) | ✅ | |
| [0056-service-decorator](https://github.com/hyperledger/aries-rfcs/tree/527849ec3aa2a8fd47a7bb6c57f918ff8bcb5e8c/features/0056-service-decorator) | ✅ | |
| [0092-transport-return-route](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0092-transport-return-route) | ✅ | |
| [0094-cross-domain messaging](https://github.com/hyperledger/aries-rfcs/tree/64e5e55c123b2efaf38f4b0911a71a1c40a7f29d/concepts/0094-cross-domain-messaging) | ✅ | |
| [0095-basic-message](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0095-basic-message) | ✅ | |
| [0160-connection-protocol](https://github.com/hyperledger/aries-rfcs/tree/9b0aaa39df7e8bd434126c4b33c097aae78d65bf/features/0160-connection-protocol) | ✅ | |
| [0211-route-coordination](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0211-route-coordination) | ⚠️ | Only pre-AIP 2.0 version. Must be updated to use `did:key` for AIP 2.0 support |
| [0183-revocation-notification](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0183-revocation-notification) | ✅ | |
| [0360-use-did-key](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0360-use-did-key) | ⚠️ | Not integrated by all protocols yet |
| [0434-outofband](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0434-outofband) | ✅ | |
| [0441-present-proof-best-practices](https://github.com/hyperledger/aries-rfcs/tree/910d79aa72a9e656f0003b4eab5d49549cca361e/concepts/0441-present-proof-best-practices) | ✅ | |
| [0453-issue-credential-v2](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0453-issue-credential-v2) | ✅ | |
| [0454-present-proof-v2](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0454-present-proof-v2) | 🚧 | |
| [0510-dif-pres-exch-attach](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0510-dif-pres-exch-attach) | 🚧 | |
| [0519-goal-codes](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/concepts/0519-goal-codes) | ❌ | |
| [0557-discover-features-v2](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0557-discover-features-v2) | ❌ | |
| [0587-encryption-envelope-v2](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0587-encryption-envelope-**v2**) | ❌ | |
| [0592-indy-attachments](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0592-indy-attachments) | ⚠️ | Supported for Issue Credential v1 & v2 and Present Proof v1, not v2 |
| [0593-json-ld-cred-attach](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0593-json-ld-cred-attach) | 🚧 | |
| [0627-static-peer-dids](https://github.com/hyperledger/aries-rfcs/tree/b3a3942ef052039e73cd23d847f42947f8287da2/features/0627-static-peer-dids) | ✅ | |
| [0646-bbs-credentials](https://github.com/hyperledger/aries-rfcs/blob/master/features/0646-bbs-credentials/README.md) | 🚧 | |
| [0317-please-ack](https://github.com/hyperledger/aries-rfcs/tree/main/features/0317-please-ack) | ✅ | |
## Non AIP supported RFCs
| RFC | Supported | Note |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------- | ---- |
| [0028-introduce](https://github.com/hyperledger/aries-rfcs/blob/main/features/0028-introduce/README.md) | ❌ | |
| [0031-discover-features](https://github.com/hyperledger/aries-rfcs/blob/main/features/0031-discover-features/README.md) | ✅ | V1 |
| [0212-pickup](https://github.com/hyperledger/aries-rfcs/blob/main/features/0212-pickup/README.md) | ✅ | |
| [0509-action-menu](https://github.com/hyperledger/aries-rfcs/blob/main/features/0509-action-menu/README.md) | ❌ | |
| [0641-linking-binary-objects-to-credentials](https://github.com/hyperledger/aries-rfcs/blob/main/features/0641-linking-binary-objects-to-credentials/README.md) | ✅ | |