@ariestools/sdk
All-in-one umbrella for the Aries Tools TypeScript/JavaScript utility libraries.
Import the whole SDK:
import { fetchJson } from '@ariestools/sdk'
…or a single slice via a subpath export (tree-shaking-friendly — you only pay for what
you import):
import { fetchJson } from '@ariestools/sdk/fetch'
import { assertEx } from '@ariestools/sdk/assert'
import type { ApiConfig } from '@ariestools/sdk/api/model'
@xylabs/sdk remains published as a backward-compatibility re-export shim of this package.
Monolithic layout
All barreled library code lives in a single source tree under src/modules/. Cross-module
imports use package.json imports aliases (for example #zod, #api, #fetch). Top-level
src/*.ts files are compile entry shims that produce the published subpath exports in dist/.
Tests live under src/spec/ only (not inside src/modules/).
Module membership, import aliases, build entries, and shims are declared in xy.config.ts as
sdkModules (intended to become first-class @xylabs/toolchain support). Generated files are
synced by scripts/sync-sdk-layout.mjs. After editing sdkModules, run:
pnpm sync-sdk-layout
pnpm xy build @ariestools/sdk
At runtime the package depends only on peerDependencies (async-mutex, zod,
@opentelemetry/*). The standalone packages @ariestools/typeof, @ariestools/error, and
@ariestools/zod are deprecated re-export shims of this package's subpaths.
Specialist packages (@ariestools/express, @ariestools/mongo, @ariestools/threads, etc.)
remain separate installs. Their @xylabs/* names are deprecated compatibility shims.