Skip to content

Latest commit

 

History

History
145 lines (99 loc) · 6.42 KB

index.md

File metadata and controls

145 lines (99 loc) · 6.42 KB
id packages-index
title Packages
kind meta
version n/a
last_updated 2026-08-28
last_verified 2026-08-28
review_cadence_days 30
status stable
tags
packages

Packages

ts-stack contains packages organized into 8 domains. Each domain serves a specific part of the stack — from core crypto to licensed content and business logic. See the top-level README.md for the current package map.

Eight Domains

SDK

Core cryptographic and transaction primitives. Every application starts here.

  • @bsv/sdk — Keys, signatures, transactions, BEEF, SPV
  • @bsv/verifast — Optional WASM script verification

Wallet

Key management, balance tracking, signing — local or via wallet service.

Network

P2P Real-time Event Listener for Teranode

  • @bsv/chirp — Chunked Merkle publication and resilient retrieval over UHRP
  • @bsv/teranode-listener — Subscribe to Teranode P2P topics (blocks, subtrees, mining) with callbacks (see specs/sync for related)

Content

Licensed, encrypted, attributable creative content and composition.

  • @bsv/lch — BRC-170 framing, rights, acquisition, key delivery, provenance, and whole-placement composition

Overlays

Run and consume overlay services that index on-chain data.

Messaging

Authenticated messages between identities using cryptographic signatures.

Middleware

HTTP authentication and payment-gating packages.

Authenticated Express middleware stack:

Independent HTTP 402 flow:

  • @bsv/402-pay — HTTP 402 payment handler designed to work without auth middleware

Helpers

Shared utilities, codecs, templates, and adapters.

  • @bsv/templates — Predefined ScriptTemplate examples for protocol engineers; OpReturn is one template among several
  • @bsv/did — SD-JWT VC and optional did:key helpers for BSV SDK identity keys
  • @bsv/simple — Simplified API for common operations
  • @bsv/wallet-helper — Wallet utility functions
  • @bsv/air-gap — Fountain-coded optical QR transport for arbitrary bytes
  • @bsv/amountinator — Satoshi/BSV conversion and formatting
  • @bsv/fund-wallet — Faucet integration for testnet/devnet
  • create-bsv-app — CLI and starter catalogue for new applications

Package Relationships

Package relationships diagram showing an inward dependency flow from application packages to wallet, infrastructure, and core SDK layers, with helpers shown as cross-cutting dashed dependencies

Choosing Packages

See Choose Your Stack for a decision guide based on what you're building.

Installation

Most projects start with the SDK:

npm install @bsv/sdk

Then add packages as needed:

npm install @bsv/wallet-toolbox @bsv/overlay @bsv/authsocket

For monorepo development, see Install.

Package Stability

Public packages are versioned according to Semantic Versioning, but their maturity and runtime profiles differ. Use each package page and Generated Stack Facts rather than assuming every workspace project is a production npm package.

  • Stable — API is locked, no breaking changes
  • Beta — API may change, breaking changes possible
  • Experimental — Early development, expect significant changes
  • Deprecated — Sunset path defined, do not use in new projects

Check each package's documentation for its stability status.

Next Steps