@xyo-network/sdk-protocol-core
Foundation SDK core monolith for XYO Protocol 2.0 — protocol, core payload plugins, manifest, and sdk-utils. The public
@xyo-network/sdk-protocolpackage re-exports this package.
Thin barrel
@xyo-network/sdk-protocol re-exports the published @xyo-network/* foundation packages.
Its dist/ contains thin re-export bundles, and runtime dependencies pull in the
individual foundation packages transitively. Shared externals (ethers, @ariestools/sdk,
zod, etc.) remain peerDependencies.
Import the whole SDK:
import { ObjectHasher } from '@xyo-network/sdk-protocol'
...or a foundation package via subpath export:
import { PayloadPlugins } from '@xyo-network/sdk-protocol/core-payload-plugins'
import { Api } from '@xyo-network/sdk-protocol/sdk-utils'
import { PayloadSchema } from '@xyo-network/sdk-protocol/payload-model'
Compilation is handled by the @ariestools/toolchain custom entry mode configured in
xy.config.ts. Because workspace compile runs topologically, every
foundation package's dist/ is built before this barrel compiles:
pnpm xy build # compiles all packages, then builds the barrel
pnpm xy build @xyo-network/sdk-protocol # builds the barrel using already-compiled child dist
Consumers can import from @xyo-network/sdk-protocol, one of its subpaths, or the
individual @xyo-network/* foundation packages directly.
Cloudflare workerd secp256k1
The elliptic/workerd subpath supplies the SDK's secp256k1 operations from a
statically imported WebAssembly.Module, as required by Cloudflare Workers:
import { initializeEllipticWorkerd } from '@xyo-network/sdk-protocol-core/elliptic/workerd'
const cryptoReady = initializeEllipticWorkerd()
Await cryptoReady before using Account signing or verification APIs. The
backend is installed once into the shared Elliptic singleton and cannot be
replaced after initialization. The packaged libauth Wasm artifact is SHA-256
pinned and includes its upstream MIT license.
Install
Using npm:
npm install @xyo-network/sdk-protocol
Using yarn:
yarn add @xyo-network/sdk-protocol
Using pnpm:
pnpm add @xyo-network/sdk-protocol
Using bun:
bun add @xyo-network/sdk-protocol
License
See the LICENSE file for license rights and limitations (LGPL-3.0-only).
