Expand description
Simplified Cardano (Conway-era) transaction types, optimized for JSON I/O over web APIs.
§Design
- Addresses are bech32 strings (
addr1…,stake1…). No on-chain bytes parsing here. - Hashes / key-hashes / asset names are hex-encoded strings (no
0xprefix). - Amounts (lovelace, native-token quantities, mint quantities) are serialized as JSON strings to avoid 2^53 precision loss in JS clients.
- PlutusData serializes to CSL’s DetailedSchema, so the JSON can be fed directly to
cardano-serialization-lib’sPlutusData::from_json(_, DetailedSchema)(or whisky’sWData::JSON(...).to_cbor()). - Field naming is
camelCasethroughout.
§Scope
Types only — no CBOR, no signing, no balancing. Designed to be the on-the-wire shape that a frontend / API exchanges with a builder backend.
Re-exports§
pub use address::*;pub use cert::*;pub use plutus::*;pub use primitives::*;pub use script::*;pub use tx::*;pub use value::*;
Modules§
- address
- Bech32-encoded address types and on-chain credentials.
- cert
- Conway-era certificates: stake registration/delegation, pool ops, DRep ops, committee ops.
- plutus
PlutusData— JSON shape matches cardano-serialization-lib’sPlutusDatumSchema::DetailedSchema.- primitives
- Primitive aliases, hex-string newtypes, and serde helpers for big-number stringification.
- script
- Native scripts (multisig/timelock) and Plutus scripts.
- tx
- Transaction inputs, outputs, mint, withdrawals, certs, and the full body.
- value
- Multi-asset value (ADA + native tokens).