Modules & artifacts
In 0.4.0 and later, the library has been divided into smaller modules. These modules can be added to a project based on requirement.
Group Id: com.bloxbean.cardano
For simple setup, you can use cardano-client-lib and one of the backend provider as dependency.
| Modules | Artifact Id | Description |
|---|---|---|
| cardano-client-lib | cardano-client-lib | Includes core, function, cip and quicktx. Backend providers and the preview modules below are separate dependencies. (Recommended for most application) |
| Backend Api | cardano-client-backend | Defines backend apis which are implemented by provider specific module. |
| Blockfrost Backend | cardano-client-backend-blockfrost | Provides integration with Blockfrost |
| Koios Backend | cardano-client-backend-koios | Provides integration with Koios |
| Ogmios/Kupo Backend | cardano-client-backend-ogmios | Provides integration with Ogmios and Kupo. Supported Apis : submitTransaction, evaluateTx, Kupo support (UtxoService) |
For fine-grained dependency management, add one or more below modules as required.
| Modules | Artifact Id | Description |
|---|---|---|
| common | cardano-client-common | Contains common utilities (HexUtil, JsonUtil, Cbor Utils etc). This module doesn’t depend on any other module. Dependencies: None |
| crypto | cardano-client-crypto | Provides implementation for standards like Bip32, Bip39, CIP1852 and other crypto primitives Dependencies: common |
| address | cardano-client-address | Supports derivation of various types of Cardano addresses (Base, Enterprise, Pointer, Stake etc) Dependencies: common, crypto, common-spec |
| metadata | cardano-client-metadata | Provides simple api to generate and serialize generic metadata Dependencies: common, crypto |
| transaction-spec | cardano-client-transaction-spec | Transaction model and CBOR serialization |
| core | cardano-client-core | Contains Account, transaction building blocks and common apis. Dependencies: common, crypto, common-spec, metadata, transaction-spec, core-api, plutus, coinselection, governance |
| quicktx | cardano-client-quicktx | The recommended, declarative API for building and submitting transactions. Dependencies: core, function, backend, hd-wallet |
| function | cardano-client-function | Composable functions: the internal layer beneath QuickTx. Dependencies: core, hd-wallet |
| cip | cardano-client-cip | A umbrella module which provides a simple way to get available cip implementations (cip25, cip8 etc.) Dependencies: cip8, cip20, cip25, cip27, cip30, cip67, cip68, cip102 |
| cip8 | cardano-client-cip8 | CIP 8 - Message Signing Dependencies: common, crypto |
| cip20 | cardano-client-cip20 | CIP 20 - Transaction message/comment metadata Dependencies: metadata |
| cip25 | cardano-client-cip25 | CIP 25 - Media NFT Metadata Standard Dependencies: metadata |
| cip27 | cardano-client-cip27 | CIP 27 - CNFT Community Royalties Standard Dependencies: cip25 |
| cip30 | cardano-client-cip30 | CIP 30 - Cardano dApp-Wallet Web Bridge Dependencies: cip8, core |
Preview modules
Section titled “Preview modules”These modules are in the latest preview, and their APIs may change before the stable release. See what’s new for details.
| Modules | Artifact Id | Available from | Description |
|---|---|---|---|
| txflow | cardano-client-txflow | 0.8.0 preview | Multi-step transaction orchestration and TxStream |
| txflow-store-rdbms | cardano-client-txflow-store-rdbms | 0.8.0 preview | Durable TxFlow and TxStream storage on a SQL database |
| merkle-patricia-forestry | cardano-client-merkle-patricia-forestry | 0.8.0 preview | Merkle Patricia Forestry, compatible with Aiken’s on-chain library |
| merkle-patricia-forestry-rocksdb | cardano-client-merkle-patricia-forestry-rocksdb | 0.8.0 preview | MPF storage on RocksDB, with versions and garbage collection |
| merkle-patricia-forestry-rdbms | cardano-client-merkle-patricia-forestry-rdbms | 0.8.0 preview | MPF storage on PostgreSQL, H2 or SQLite |
| jellyfish-merkle | cardano-client-jellyfish-merkle | 0.8.0 preview | Jellyfish Merkle Tree for versioned state |
| jellyfish-merkle-rocksdb | cardano-client-jellyfish-merkle-rocksdb | 0.8.0 preview | JMT storage on RocksDB |
| jellyfish-merkle-rdbms | cardano-client-jellyfish-merkle-rdbms | 0.8.0 preview | JMT storage on PostgreSQL, H2 or SQLite |
| programmable-token | cardano-client-programmable-token | 0.8.0-pre7 | CIP-113 programmable tokens |
| nexus backend | cardano-client-backend-nexus | 0.8.0-pre7 | Backend for the Nexus API |