Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/rebuild-api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ jobs:
pnpm install
rm -fR ./docs/api
pnpm run build:veramo
pnpm run format
- name: 'check codeblocks'
run: |
pnpm run check:codeblocks'

Copilot AI Feb 25, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The workflow step has a stray trailing quote in pnpm run check:codeblocks', which will cause the action to fail with a shell syntax/command-not-found error. Remove the extra ' so the script can run.

Suggested change
pnpm run check:codeblocks'
pnpm run check:codeblocks

Copilot uses AI. Check for mistakes.
- name: 'Docusaurus build'
run: |
pnpm run build
Expand Down
11 changes: 10 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
# Dependencies
/node_modules
**/node_modules

# Production
/build
/temp
/daf
/veramo
**/tmp

# Generated files
.docusaurus
Expand All @@ -23,3 +24,11 @@ yarn-debug.log*
yarn-error.log*

.idea/
# Generated by `pnpm run baseline:docs`. Ignore for now.
**/baseline-report.md

## LLMs - not ready to add these to git yet, ignore for now
AGENTS.md
CLAUDE.md
.claude/
/roadmap/
13 changes: 13 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
**/*.png
**/*.jpg
**/*.jpeg
**/*.gif
**/*.svg
**/*.ico
**/*.webp
**/*.woff
**/*.woff2
**/*.ttf
**/*.eot
build/

48 changes: 24 additions & 24 deletions docs/basics/identifiers.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,37 +43,37 @@ has available. This is the foundation of how `DIDs` can start to communicate wit
// https://veramo.io/.well-known/did.json

{
"@context": [
"https://www.w3.org/ns/did/v1",
"https://w3id.org/security/v2",
"https://w3id.org/security/suites/secp256k1recovery-2020/v2",
"https://w3id.org/security/suites/ed25519-2018/v1"
'@context': [
'https://www.w3.org/ns/did/v1',
'https://w3id.org/security/v2',
'https://w3id.org/security/suites/secp256k1recovery-2020/v2',
'https://w3id.org/security/suites/ed25519-2018/v1',
],
"id": "did:web:veramo.io",
"verificationMethod": [
id: 'did:web:veramo.io',
verificationMethod: [
{
"id": "did:web:veramo.io#root-1",
"type": "EcdsaSecp256k1VerificationKey2019",
"controller": "did:web:veramo.io",
"publicKeyHex": "042b0af9b3ae6c7c3a90b01a3879d9518081bc0dcdf038488db9cb109b082a77d97ea3373e3dfde0eccd9adbdce11d0302ea5c098dbb0b310234c86895c8641622"
id: 'did:web:veramo.io#root-1',
type: 'EcdsaSecp256k1VerificationKey2019',
controller: 'did:web:veramo.io',
publicKeyHex: '042b0af9b3ae6c7c3a90b01a3879d9518081bc0dcdf038488db9cb109b082a77d97ea3373e3dfde0eccd9adbdce11d0302ea5c098dbb0b310234c86895c8641622',
},
{
"id": "did:web:veramo.io#root-2",
"type": "Ed25519VerificationKey2018",
"controller": "did:web:veramo.io",
"publicKeyBase58": "ZG6NM2qB1CwADHmJsbGqWVhwmGLrVACBu7xmXJNMWLH"
id: 'did:web:veramo.io#root-2',
type: 'Ed25519VerificationKey2018',
controller: 'did:web:veramo.io',
publicKeyBase58: 'ZG6NM2qB1CwADHmJsbGqWVhwmGLrVACBu7xmXJNMWLH',
},
{
"id": "did:web:veramo.io#root-3",
"type": "Ed25519VerificationKey2020",
"controller": "did:web:veramo.io",
"publicKeyMultibase": "z6Mkf1X8xbHGWYhQGi8TzSZ7gc3hmLYCGNQYsv2tboGPGj7f"
}
id: 'did:web:veramo.io#root-3',
type: 'Ed25519VerificationKey2020',
controller: 'did:web:veramo.io',
publicKeyMultibase: 'z6Mkf1X8xbHGWYhQGi8TzSZ7gc3hmLYCGNQYsv2tboGPGj7f',
},
],
"authentication": ["did:web:veramo.io#root-1", "did:web:veramo.io#root-2", "did:web:veramo.io#root-3"],
"assertionMethod": ["did:web:veramo.io#root-1", "did:web:veramo.io#root-2", "did:web:veramo.io#root-3"],
"keyAgreement": ["did:web:veramo.io#root-2", "did:web:veramo.io#root-3"],
"service": []
authentication: ['did:web:veramo.io#root-1', 'did:web:veramo.io#root-2', 'did:web:veramo.io#root-3'],
assertionMethod: ['did:web:veramo.io#root-1', 'did:web:veramo.io#root-2', 'did:web:veramo.io#root-3'],
keyAgreement: ['did:web:veramo.io#root-2', 'did:web:veramo.io#root-3'],
service: [],
}
```

Expand Down
28 changes: 12 additions & 16 deletions docs/basics/verifiable_data.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,24 +31,20 @@ This is the current v1 format for a W3C compliant Verifiable Credential:

```json5
{
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"type": [
"VerifiableCredential"
],
"issuer": {
"id": "did:web:veramo.io"
'@context': ['https://www.w3.org/2018/credentials/v1'],
type: ['VerifiableCredential'],
issuer: {
id: 'did:web:veramo.io',
},
"issuanceDate": "2020-01-01T19:33:24Z",
"credentialSubject": {
"id": "did:example:user",
"community": {
"rank": "rockstar"
}
issuanceDate: '2020-01-01T19:33:24Z',
credentialSubject: {
id: 'did:example:user',
community: {
rank: 'rockstar',
},
},
"proof": {
proof: {
// ...
}
},
}
```
42 changes: 21 additions & 21 deletions docs/dev_tools/agent_explorer_plugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,23 +117,23 @@ https://cdn.jsdelivr.net/gh/{USER}/{REPO}/dist/plugin.js

The plugin name

```ts
```tsx
name: string
```

### `description`

A short description of the plugin

```ts
```tsx
description: string
```

### `icon`

The plugin icon

```ts
```tsx
icon?: React.ReactNode;
```

Expand All @@ -143,14 +143,14 @@ These will be displayed in the plugins list

### `routes`

```ts
```tsx
/** An array of routes to be added to the explorer */
routes?: IRouteComponent[];
```

Example:

```ts
```tsx
routes: [
{
path: '/contacts',
Expand All @@ -167,13 +167,13 @@ routes: [

An array of menu items to be added to the explorer

```ts
```tsx
menuItems?: ExtendedMenuDataItem[];
```

Example:

```ts
```tsx
menuItems: [
{
name: 'Contacts',
Expand All @@ -191,21 +191,21 @@ An array of methods that the plugin requires to be implemented by the agent.

If the agent does not implement the required methods, the plugin will be loaded but the menu item will not be shown.

```ts
```tsx
requiredMethods: string[];
```

Example:

```ts
```tsx
requiredMethods: ['dataStoreORMGetIdentifiers'],
```

### `hasCss`

Does the plugin provide custom css

```ts
```tsx
hasCss?: boolean;
```

Expand All @@ -215,15 +215,15 @@ Example: [Brainshare](https://github.com/veramolabs/agent-explorer-plugin-graph-

Veramo agent plugins accesable by all explorer plugins

```ts
```tsx
agentPlugins?: IAgentPlugin[];
```

### `messageHandlers`

Veramo agent message handlers

```ts
```tsx
messageHandlers?: AbstractMessageHandler[];
```

Expand All @@ -233,13 +233,13 @@ Example: [Chats plugin](https://github.com/veramolabs/agent-explorer/blob/main/p

Menu items for the credential context menu

```ts
```tsx
getCredentialContextMenuItems?: (credential: UniqueVerifiableCredential) => MenuProps['items'];
```

Example [Chats plugin](https://github.com/veramolabs/agent-explorer/blob/7614ba2a25423aa6304013738af8e67c625394cd/packages/agent-explore/src/plugins/chats/menu.tsx#L8)

```ts
```tsx
{
key: 'sendto',
label: 'Share with ...',
Expand All @@ -254,7 +254,7 @@ Example [Chats plugin](https://github.com/veramolabs/agent-explorer/blob/7614ba2

Returns a react component for a given verifiable credential

```ts
```tsx
getCredentialComponent?: (credential: UniqueVerifiableCredential) => React.FC<IVerifiableComponentProps> | undefined;
```

Expand All @@ -266,7 +266,7 @@ Example: [Kudos plugin](https://github.com/veramolabs/agent-explorer-plugin-kudo

Returns a react component that will be displayed in the identifier hover component

```ts
```tsx
getIdentifierHoverComponent?: () => React.FC<IIdentifierHoverComponentProps>;
```

Expand All @@ -278,13 +278,13 @@ Example: [Gitcoin Passport plugin](https://github.com/veramolabs/agent-explorer-

Returns an array of react components and labels that will be displayed as tabs in the indentifier profile page

```ts
```tsx
getIdentifierTabsComponents?: () => Array<{ label: string, component: React.FC<IIdentifierTabsComponentProps> }>;
```

Example: [Credentials plugin](https://github.com/veramolabs/agent-explorer/blob/42c625bdcfe03c725abb2cf3db88bec2e3e90a99/packages/agent-explore/src/plugins/credentials/index.tsx)

```ts
```tsx
getIdentifierTabsComponents: () => {
return [
{
Expand All @@ -305,7 +305,7 @@ getIdentifierTabsComponents: () => {

Returns an array of react components that will be displayed as action buttons in Credential component

```ts
```tsx
getCredentialActionComponents?: () => Array<React.FC<ICredentialActionComponentProps>>;
```

Expand All @@ -317,15 +317,15 @@ Example: [Reactions plugin](https://github.com/veramolabs/agent-explorer/blob/ma

`react-markdown` Components for custom markdown rendering

```ts
```tsx
getMarkdownComponents?: () => Partial<Components> | undefined;
```

### `getRemarkPlugins`

`remark` plugins for custom markdown manipulations

```ts
```tsx
getRemarkPlugins?: () => PluggableList;
```

Expand Down
19 changes: 8 additions & 11 deletions docs/dev_tools/veramo_react.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,8 @@ In the provider setup above, add the following to bootstrap the local agent. You
add while your application is running.

```tsx
import {agent} from '../veramo';

<VeramoProvider agent={[agent]}>...</VeramoProvider>
import { agent } from '../veramo'
;<VeramoProvider agent={[agent]}>...</VeramoProvider>
```

## `useVeramo hook`
Expand All @@ -96,17 +95,15 @@ import { useQuery } from 'react-query'

export default () => {
const { agent } = useVeramo<IResolver>()
const { data } = useQuery(
['resolutionResult', { agentId: agent?.context.id }],
() => agent?.resolveDid({ didUrl: 'did:web:community.veramo.io' })())
const { data } = useQuery(['resolutionResult', { agentId: agent?.context.id }], () =>
agent?.resolveDid({ didUrl: 'did:web:community.veramo.io' })(),
)

return (
<div>
{
data?.didDocument?.verificationMethod.map((key) => (
<div>{JSON.stringify(key)}</div>
))
}
{data?.didDocument?.verificationMethod.map((key) => (
<div>{JSON.stringify(key)}</div>
))}
</div>
)
}
Expand Down
Loading