{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  "serialNumber": "urn:uuid:81024314-5c14-4374-9318-361a7f1ad2a6",
  "version": 1,
  "metadata": {
    "timestamp": "2026-07-30T19:14:08Z",
    "tools": {
      "components": [
        {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.3.3",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.3.3",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.3.3",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      ]
    },
    "authors": [
      {
        "name": "OWASP Foundation"
      }
    ],
    "lifecycles": [
      {
        "phase": "pre-build"
      }
    ],
    "component": {
      "name": "server",
      "group": "@hocuspocus",
      "version": "4.1.0",
      "description": "plug & play collaboration backend",
      "purl": "pkg:npm/%40hocuspocus/server@4.1.0",
      "bom-ref": "pkg:npm/@hocuspocus/server@4.1.0",
      "properties": [],
      "type": "application",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "externalReferences": [
        {
          "type": "website",
          "url": "https://hocuspocus.dev"
        },
        {
          "type": "vcs",
          "url": "https://github.com/ueberdosis/hocuspocus"
        }
      ]
    },
    "properties": [
      {
        "name": "cdx:bom:componentTypes",
        "value": "npm"
      },
      {
        "name": "cdx:bom:componentNamespaces",
        "value": "@hocuspocus"
      },
      {
        "name": "cdx:bom:componentSrcFiles",
        "value": "node_modules/@hocuspocus/common/package.json\\nnode_modules/async-mutex/package.json\\nnode_modules/crossws/package.json\\nnode_modules/kleur/package.json\\nnode_modules/lib0/package.json\\nnode_modules/y-protocols/package.json\\nnode_modules/yjs/package.json"
      }
    ]
  },
  "components": [
    {
      "authors": [
        {
          "name": "Kevin Jahns"
        }
      ],
      "group": "",
      "name": "yjs",
      "version": "13.6.29",
      "description": "Shared Editing Library",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/yjs@13.6.29",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://docs.yjs.dev"
        },
        {
          "type": "vcs",
          "url": "https://github.com/yjs/yjs.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/yjs@13.6.29",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/yjs/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "yjs,yjs/Doc,applyUpdate,yjs/applyUpdate,encodeStateAsUpdate,yjs/encodeStateAsUpdate"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/yjs/package.json"
              }
            ],
            "concludedValue": "node_modules/yjs/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#7"
          },
          {
            "location": "dist/hocuspocus-server.esm.js#8"
          },
          {
            "location": "dist/hocuspocus-server.cjs#35"
          },
          {
            "location": "src/Document.ts#7"
          },
          {
            "location": "src/Hocuspocus.ts#3"
          },
          {
            "location": "src/MessageReceiver.ts#17"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Kevin Jahns <kevin.jahns@protonmail.com>"
        }
      ],
      "group": "",
      "name": "y-protocols",
      "version": "1.0.7",
      "description": "Yjs encoding protocols",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/y-protocols@1.0.7",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/yjs/y-protocols#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/yjs/y-protocols.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/y-protocols@1.0.7",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/y-protocols/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "y-protocols/awareness,Awareness,y-protocols/awareness/Awareness,applyAwarenessUpdate,y-protocols/awareness/applyAwarenessUpdate,encodeAwarenessUpdate,y-protocols/awareness/encodeAwarenessUpdate,removeAwarenessStates,y-protocols/awareness/removeAwarenessStates,y-protocols/sync,messageYjsSyncStep1,y-protocols/sync/messageYjsSyncStep1,messageYjsSyncStep2,y-protocols/sync/messageYjsSyncStep2,messageYjsUpdate,y-protocols/sync/messageYjsUpdate,readSyncStep1,y-protocols/sync/readSyncStep1,readSyncStep2,y-protocols/sync/readSyncStep2,readUpdate,y-protocols/sync/readUpdate,writeSyncStep1,y-protocols/sync/writeSyncStep1,writeUpdate,y-protocols/sync/writeUpdate"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/y-protocols/package.json"
              }
            ],
            "concludedValue": "node_modules/y-protocols/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#5"
          },
          {
            "location": "dist/hocuspocus-server.cjs#33"
          },
          {
            "location": "src/Document.ts#6"
          },
          {
            "location": "src/MessageReceiver.ts#8"
          },
          {
            "location": "src/OutgoingMessage.ts#9"
          },
          {
            "location": "src/OutgoingMessage.ts#10"
          },
          {
            "location": "src/types.ts#2"
          },
          {
            "location": "dist/hocuspocus-server.esm.js#6"
          },
          {
            "location": "dist/hocuspocus-server.cjs#34"
          },
          {
            "location": "src/MessageReceiver.ts#16"
          },
          {
            "location": "src/OutgoingMessage.ts#11"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Kevin Jahns <kevin.jahns@protonmail.com>"
        }
      ],
      "group": "",
      "name": "lib0",
      "version": "0.2.117",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/lib0@0.2.117",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/dmonad/lib0#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/dmonad/lib0.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/lib0@0.2.117",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/lib0/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "lib0/decoding,createDecoder,lib0/decoding/createDecoder,readVarString,lib0/decoding/readVarString,readVarUint,lib0/decoding/readVarUint,readVarUint8Array,lib0/decoding/readVarUint8Array,Decoder,lib0/decoding/Decoder,lib0/encoding,createEncoder,lib0/encoding/createEncoder,length,lib0/encoding/length,toUint8Array,lib0/encoding/toUint8Array,writeVarString,lib0/encoding/writeVarString,writeVarUint,lib0/encoding/writeVarUint,writeVarUint8Array,lib0/encoding/writeVarUint8Array,Encoder,lib0/encoding/Encoder"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/lib0/package.json"
              }
            ],
            "concludedValue": "node_modules/lib0/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#2"
          },
          {
            "location": "dist/hocuspocus-server.esm.js#3"
          },
          {
            "location": "dist/hocuspocus-server.cjs#30"
          },
          {
            "location": "src/ClientConnection.ts#10"
          },
          {
            "location": "src/IncomingMessage.ts#1"
          },
          {
            "location": "src/IncomingMessage.ts#7"
          },
          {
            "location": "src/MessageReceiver.ts#2"
          },
          {
            "location": "src/MessageReceiver.ts#3"
          },
          {
            "location": "dist/hocuspocus-server.esm.js#4"
          },
          {
            "location": "dist/hocuspocus-server.cjs#32"
          },
          {
            "location": "src/IncomingMessage.ts#8"
          },
          {
            "location": "src/IncomingMessage.ts#15"
          },
          {
            "location": "src/OutgoingMessage.ts#1"
          },
          {
            "location": "src/OutgoingMessage.ts#8"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Luke Edwards <luke.edwards05@gmail.com> (https://lukeed.com)"
        }
      ],
      "group": "",
      "name": "kleur",
      "version": "4.1.5",
      "description": "The fastest Node.js library for formatting terminal text with ANSI colors~!",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/kleur@4.1.5",
      "type": "library",
      "bom-ref": "pkg:npm/kleur@4.1.5",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/kleur/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "kleur"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/kleur/package.json"
              }
            ],
            "concludedValue": "node_modules/kleur/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#14"
          },
          {
            "location": "dist/hocuspocus-server.cjs#43"
          },
          {
            "location": "src/Server.ts#10"
          }
        ]
      }
    },
    {
      "group": "",
      "name": "crossws",
      "version": "0.4.4",
      "description": "Cross-platform WebSocket Servers for Node.js, Deno, Bun and Cloudflare Workers",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/crossws@0.4.4",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://crossws.h3.dev"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/crossws@0.4.4",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/crossws/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "crossws/adapters/node"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/crossws/package.json"
              }
            ],
            "concludedValue": "node_modules/crossws/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#13"
          },
          {
            "location": "src/Server.ts#9"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Christian Speckner <cnspeckn@googlemail.com> (https://github.com/DirtyHairy/)"
        }
      ],
      "group": "",
      "name": "async-mutex",
      "version": "0.5.0",
      "description": "A mutex for guarding async workflows",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/async-mutex@0.5.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/DirtyHairy/async-mutex"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/async-mutex@0.5.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/async-mutex/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "async-mutex,Mutex,async-mutex/Mutex"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/async-mutex/package.json"
              }
            ],
            "concludedValue": "node_modules/async-mutex/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#9"
          },
          {
            "location": "dist/hocuspocus-server.cjs#37"
          },
          {
            "location": "src/Document.ts#1"
          }
        ]
      }
    },
    {
      "group": "@hocuspocus",
      "name": "common",
      "version": "4.1.0",
      "description": "shared code for multiple Hocuspocus packages",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40hocuspocus/common@4.1.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://hocuspocus.dev"
        },
        {
          "type": "vcs",
          "url": "https://github.com/ueberdosis/hocuspocus"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@hocuspocus/common@4.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@hocuspocus/common/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@hocuspocus/common,AuthMessageType,@hocuspocus/common/AuthMessageType,ConnectionTimeout,@hocuspocus/common/ConnectionTimeout,Forbidden,@hocuspocus/common/Forbidden,ResetConnection,@hocuspocus/common/ResetConnection,SkipFurtherHooksError,@hocuspocus/common/SkipFurtherHooksError,Unauthorized,@hocuspocus/common/Unauthorized,WsReadyStates,@hocuspocus/common/WsReadyStates,awarenessStatesToArray,@hocuspocus/common/awarenessStatesToArray,writeAuthenticated,@hocuspocus/common/writeAuthenticated,writePermissionDenied,@hocuspocus/common/writePermissionDenied,writeTokenSyncRequest,@hocuspocus/common/writeTokenSyncRequest,CloseEvent,@hocuspocus/common/CloseEvent"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@hocuspocus/common/package.json"
              }
            ],
            "concludedValue": "node_modules/@hocuspocus/common/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/hocuspocus-server.esm.js#1"
          },
          {
            "location": "dist/hocuspocus-server.cjs#29"
          },
          {
            "location": "src/ClientConnection.ts#9"
          },
          {
            "location": "src/Connection.ts#5"
          },
          {
            "location": "src/Hocuspocus.ts#2"
          },
          {
            "location": "src/MessageReceiver.ts#1"
          },
          {
            "location": "src/OutgoingMessage.ts#13"
          }
        ]
      }
    }
  ],
  "dependencies": [],
  "annotations": [
    {
      "bom-ref": "metadata-annotations",
      "subjects": [
        "pkg:npm/@hocuspocus/server@4.1.0"
      ],
      "annotator": {
        "component": {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.3.3",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.3.3",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.3.3",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      },
      "timestamp": "2026-07-30T19:14:08Z",
      "text": "This Software Bill-of-Materials (SBOM) document was created on Thursday, July 30, 2026 with cdxgen. The data was captured during the pre-build lifecycle phase without building the application. The document describes an application named 'server' with version '4.1.0'. The package type in this SBOM is npm with a single purl namespace '@hocuspocus' described under components. The components were identified from 7 source files."
    }
  ]
}