Deep-analysis reference docs for AI agents building on Radix + Effect + TanStack. 23 files, ~15,740 lines total. Load selectively — use the routing table below to pick only what your current task needs.
Task-oriented reading lists. Numbers indicate suggested loading order (dependencies first).
- effect-Context — DI fundamentals (
Context.Tag,Rparameter) - effect-Layer — service composition
- effect-Schema — runtime validation
- radix-radix-dapp-toolkit — wallet connection + signing
- radix-TransactionManifest — building manifests
- radix-TypescriptRadixEngineToolkit — offline address derivation, SBOR encoding, tx building (TS/WASM)
- radix-TxTool — Effect transaction builder (sign, submit, poll)
- radix-Gateway — querying ledger state
- tanstackStart-ConsultationDapp — full-stack reference app
- radix-radix-dapp-toolkit — wallet challenge flow
- radix-ROLA — server-side signature verification
- radix-Account —
owner_keysmetadata & virtual derivation - radix-Gateway — fetching on-ledger public keys
- radix-Sbor — binary encoding (wire format for all values)
- radix-TransactionManifest — instruction sets & ManifestBuilder
- radix-transactions — building, signing, serializing (Rust)
- radix-RadixEngineToolkit — offline analysis, address derivation, classification (Rust)
- radix-TypescriptRadixEngineToolkit — offline tx building, signing, address derivation (TS/WASM)
- radix-TxTool — Effect-TS lifecycle: build intent → sign → submit → poll
- radix-SubIntents — composable partial transactions
- radix-AccessRule — auth rules governing method access
- radix-Sbor — SBOR encoding & schema system
- radix-AccessRule — access control hierarchy
- radix-Account — native Account blueprint (30 methods)
- radix-TransactionManifest — manifest instruction set
- radix-RadixEngineToolkit — manifest classification, entity types, address utilities
- TypeScript: radix-Gateway — Effect wrapper with retry, pagination, batching
- Rust: radix-GatewayRustSdk — typed async/blocking HTTP clients
- effect-Pipe —
pipe(),.pipe(),flow,Effect.gen - effect-Context —
Context.Tag, service containers,Rtype - effect-Layer — composable service blueprints
- effect-Schema — runtime validation & transformation
- effect-Queue — fiber-safe bounded queues
- effect-Platform — HTTP, filesystem, terminal, workers
- effect-Schema — schema definitions for procedures
- effect-Rpc — procedures, groups, middleware, streaming
- effect-Context — service dependencies for handlers
- effect-Layer — wiring handler services
- effect-Platform — HTTP server transport
Ordered by dependency (prerequisites listed first within each category).
| File | Lines | Description | Key deps |
|---|---|---|---|
| effect-Pipe | 517 | pipe(), .pipe(), flow, and when to use Effect.gen |
— |
| effect-Context | 380 | DI via Context.Tag, typed service containers, R type parameter |
— |
| effect-Layer | 597 | Composable memoized service blueprints — constructors, composition algebra, MemoMap, scopes | Context |
| effect-Schema | 1,118 | Runtime validation & transformation — built-in schemas, combinators, encoding/decoding | — |
| effect-Queue | 683 | Fiber-safe async bounded queues — backpressure, dropping, sliding, shutdown semantics | — |
| effect-Platform | 1,171 | @effect/platform — HTTP client/server, filesystem, terminal, workers, sockets, KV store |
Context, Layer |
| effect-Rpc | 1,077 | @effect/rpc — type-safe transport-agnostic RPC: procedures, groups, middleware, streaming |
Schema, Context, Layer |
| effect-atom | 406 | @effect-atom/atom — reactive state bridging Effect and React: atoms, derived computations |
Context |
| File | Lines | Description | Key deps |
|---|---|---|---|
| radix-Sbor | 806 | SBOR wire format, value kinds, schema system, derive macros, depth-limited traversal | — |
| radix-AccessRule | 436 | Access control — AllowAll/DenyAll/Protected, composite requirements, role assignment |
SBOR |
| radix-Account | 459 | Account native blueprint — state, 30 methods, deposit rules, owner badge, virtual derivation | AccessRule, SBOR |
| radix-TransactionManifest | 880 | Transaction manifest — V1/V2 instructions, ManifestBuilder, compiler pipeline, validation | SBOR |
| radix-transactions | 814 | radix-transactions Rust crate — building, signing, validating, serializing (V1/V2, Signer) |
TransactionManifest, SBOR |
| radix-RadixEngineToolkit | 785 | radix-engine-toolkit Rust crate — offline analysis, address derivation, SBOR, classification |
transactions, SBOR |
| radix-TypescriptRadixEngineToolkit | 891 | @radixdlt/radix-engine-toolkit TS/WASM wrapper — offline tx building, signing, address derivation, SBOR |
RadixEngineToolkit |
| radix-SubIntents | 567 | Subintents / pre-authorizations — composable partial transactions, multisig, governance | TransactionManifest |
| radix-Gateway | 541 | @radix-effects/gateway — Effect wrapper with tagged errors, 429 retry, pagination, batching |
— |
| radix-TxTool | 329 | @radix-effects/tx-tool — Effect transaction builder: Signer, lifecycle hooks, manifest helpers |
Gateway, TransactionManifest, Context, Layer, Schema |
| radix-GatewayRustSdk | 718 | radix-client Rust crate — typed async/blocking HTTP clients for Gateway and Core APIs |
— |
| radix-radix-dapp-toolkit | 357 | @radixdlt/radix-dapp-toolkit — wallet connection, signing, dual transport, RxJS state |
— |
| radix-ROLA | 532 | ROLA — challenge-response auth verifying wallet identity via on-ledger owner_keys signatures |
dapp-toolkit, Gateway, Account |
| File | Lines | Description | Key deps |
|---|---|---|---|
| tanstack-Router | 1,237 | TanStack Router — type-safe routing, SSR, file-based routes, search params, code splitting | — |
| tanstackStart-ConsultationDapp | 440 | Consultation dApp — React 19 + TanStack Start + Effect Atoms + Radix governance voting | Router, effect-atom, dapp-toolkit |
Effect Radix TanStack
───── ───── ───────
Pipe ─────────────┐ Sbor ──────────┬─────────┐
│ │ │ │
Context ────┬─────┤ AccessRule ──┐ TxManifest ──┬──┤ Router
│ │ │ │ │ │ │ │
Layer │ Account │ transactions │ │ │
│ │ │ │ │ │ │
Schema ─────┼─────┤ │ SubIntents │ │ ConsultationDapp
│ │ │ │ │ │ │ │ │ │
Rpc Platform │ Gateway EngineToolkit │ │ │ │ │
│ │ TsEngineToolkit │ │ │ │ │
│ │ GatewayRustSdk │ │ │ │ │
atom TxTool ─────────────────┘ │ │ │ │
│ │ │ │ │ │
│ dapp-toolkit │ │ │ │
│ │ │ │ │ │
│ ROLA ───────────────────────┘ │ │ │
│ │ │ │
└─────────────────────────────────────────────────┘──┘──┘
Arrows flow downward: a file depends on everything above it that connects to it.
- SBOR is pervasive. Any file dealing with on-ledger data (AccessRule, Account, TransactionManifest, transactions) assumes SBOR encoding. Load
radix-Sborfirst if you encounter unfamiliarManifestSbor,ScryptoSbor, or#[derive(ManifestSbor)]references. - Schema ↔ Gateway. The Gateway Effect wrapper (
radix-Gateway) useseffect-Schemafor response validation. If modifying Gateway response handling, load both. - dapp-toolkit → ROLA pipeline. ROLA depends on
dapp-toolkitfor the wallet challenge/response flow andradix-Gatewayfor fetching on-ledgerowner_keys. The three form a pipeline: dapp-toolkit (client) → ROLA (server verification) → Gateway (ledger lookup). - TxTool → Gateway → Signer pipeline.
radix-TxToolorchestrates the full TypeScript transaction lifecycle: manifest → intent → sign → submit → poll. It depends onradix-Gatewayfor submission/status and useseffect-Context/effect-Layer/effect-Schemafor its service architecture. TheSignertag is swappable (Vault for production, private key for tests). - V1 vs V2 transactions.
radix-TransactionManifestandradix-transactionsboth cover the V1→V2 evolution. SubIntents are V2-only. If working with V2, load all three. - Rust vs TS Engine Toolkit.
radix-RadixEngineToolkitis the native Rust crate for server/CLI use.radix-TypescriptRadixEngineToolkitis the@radixdlt/radix-engine-toolkitTS/WASM wrapper for browser/Node — same core compiled to WASM. Use Rust for native performance, TS for frontend or Node projects.