New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

@ariestools/chain-serve-local-s3

Package Overview
Dependencies
Maintainers
3
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ariestools/chain-serve-local-s3

One-call local XL1 test harness: published-chain S3 layout (s3rver) + xl1-cli (api/producer/finalizer/mempool/indexer)

latest
npmnpm
Version
0.1.23
Version published
Maintainers
3
Created
Source

@ariestools/chain-serve-local-s3

Dev/test only. Boots an ephemeral local XL1 environment for integration and e2e tests. Not for production.

One function call starts:

  • @ariestools/aries-chain-serve — S3-compatible published-chain layout (/blocks, /state, /indexes) via s3rver
  • @xyo-network/xl1-cliapi + producer + finalizer + mempool + indexer, publishing finalized blocks and index into that layout

Install

pnpm add -D @ariestools/chain-serve-local-s3

Pulls in @ariestools/aries-chain-serve, @xyo-network/xl1-cli, and @xyo-network/xl1-sdk as runtime dependencies.

Single-call usage

import { startLocalS3Chain } from '@ariestools/chain-serve-local-s3'

const chain = await startLocalS3Chain()

// chain.rpcUrl              http://127.0.0.1:<port>/rpc
// chain.apiPort
// chain.chainId
// chain.blockProducerWallet // path 0 of the insecure test mnemonic
// chain.s3Endpoint          s3rver origin
// chain.s3ReadUrls          { finalized, chainState, index }

await chain.stop()

Vitest setupFile (lifehash-style globals)

// test/setup/api-local-s3.ts
import { afterAll, beforeAll } from 'vitest'
import { registerLocalS3Chain } from '@ariestools/chain-serve-local-s3'

registerLocalS3Chain(
  { beforeAll, afterAll },
  { assignGlobals: true },
)

With assignGlobals: true, specs can read:

GlobalDescription
apiPortXL1 API port
rpcUrlhttp://127.0.0.1:<port>/rpc
chainIdLocal chain id
blockProducerWalletGenesis / producer path-0 account
s3ReadUrls{ finalized, chainState, index } read base URLs
s3Endpoints3rver base URL

Options

OptionDefault
apiPort8080 + VITEST_WORKER_ID (or free fallback)
chainIdlocal-dev fixture id
mnemonicinsecure test test … junk phrase
healthTimeoutMs120_000
assignGlobalsfalse
silenttrue (s3rver)
logXl1true (child logs → stderr)

Notes

  • The local API serves /rpc only (no REST datalake). Writers typically run in inline mode; body resolution on the read side is up to the test.
  • S3 credentials accepted by the layout: S3RVER / S3RVER (exported as S3_CREDENTIALS).
  • Parallel vitest workers get distinct preferred API ports via VITEST_WORKER_ID; Prometheus and health-check ports are disabled in the child config to avoid clashes.

Keywords

ariestools

FAQs

Package last updated on 13 Sep 2026

Related posts