Inspiration
We have had many inquires about support for the uniresolver within aries-framework-javascript (AFJ). As we also see major value in this, we have decided to add it and add support for ~60 more DID methods.
What it does
AFJ is a framework that has gained quite a bit of popularity in the last months. It allows people with less SSI knowledge to quickly get started building DIDComm agents. Lately we have been expanding to new standards, OpenID4VC for example. The uniresolver is a great tool that we can leverage to make this growth even more accessible and complete.
How we built it
We started with reading the documentation of the uniresolver and it was quite clear that the integration will be quite straight forward. AFJ has an easy way to create agent modules and also did resolvers, which made the development a whole lot better.
Challenges we ran into
AFJ relies on the fact the the did resolver instance provides the DID methods it can resolve. Since we did not want the user to supply a list of ~60 DID methods themselves, we have decided to leverage the /1.0/methods endpoint of the dev uniresolver so we can dynamically set this before the agent is initialized. We could not find whether this was a standard feature on a uniresolver, or a custom one, so we will have to do some additional research into that.
Accomplishments that we're proud of
We have built a production-ready implementation that combines the powerful uniresolver with AFJ. Which has also been released to NPM for everyone to use.
What we learned
Setting up, writing a custom driver and using the uniresolver is an extremely easy process and we are happy that we have decided to add support for this.
What's next for AFJ Universal Resolver Integration
We would like to provide an easy way for users to set everything up, by providing a Docker image with a list of pre-selected methods that fit within the AFJ ecosystem.
Built With
- aries-framework-javascript
- typescript
- uniresolver
- universal-resolver
Log in or sign up for Devpost to join the conversation.