Releases: Gero-Labs/maestro-java-client
Releases · Gero-Labs/maestro-java-client
v1.0.0
🎉 Maestro Java Client v1.0.0 - Initial Release
We are excited to announce the first stable release of the Maestro Java Client! This library provides a comprehensive, type-safe Java interface for interacting with the Maestro
blockchain indexer APIs for Cardano.
✨ Features
🚀 Core Functionality
- Type-safe API access with strongly-typed models for all Maestro endpoints
- Comprehensive API coverage including accounts, addresses, assets, blocks, transactions, pools, and more
- Built-in pagination support with flexible query options
- Multi-network support for Mainnet, Preprod, and Preview networks
- Advanced error handling with automatic retry mechanisms
- GZIP compression for improved performance
- Configurable timeouts and retry policies
- Environment-based configuration for easy deployment
📦 Service Coverage
- ✅ Accounts API - Stake account information, rewards, history, delegations
- ✅ Addresses API - Address details, UTXOs, transactions
- ✅ Assets API - Native assets, tokens, NFTs metadata
- ✅ Blocks API - Block information and transactions
- ✅ Datum API - Script datum values
- ✅ DEX API - Decentralized exchange data
- ✅ Epochs API - Epoch information and parameters
- ✅ General API - Chain info and protocol parameters
- ✅ Pools API - Stake pool information and delegators
- ✅ Policies API - Minting policies and assets
- ✅ Scripts API - Smart contract scripts
- ✅ Transactions API - Transaction details and submission
📋 Requirements
- Java 11 or higher
- Maven or Gradle build system
🚀 Getting Started
Maven
<dependency>
<groupId>io.github.gero-labs</groupId>
<artifactId>maestro-java-client</artifactId>
<version>1.0.0</version>
</dependency>Gradle
implementation 'io.github.gero-labs:maestro-java-client:1.0.0'
Quick Example
import adlabs.maestro.client.backend.factory.BackendFactory;
import adlabs.maestro.client.backend.factory.BackendService;
// Initialize client
String apiKey = "your-maestro-api-key";
BackendService maestroService = BackendFactory.getMaestroMainnetService(apiKey);
// Query account information
Result<TimestampedAccountInfo> result = maestroService.getAccountService()
.getAccountInfo("stake1u9ylzsgxaa6xctf4juup682ar3juj85n8tx3hthnljg47zctvm3rc", Options.EMPTY);
if (result.isSuccessful()) {
System.out.println("Total Balance: " + result.getValue().getData().getTotalBalance());
}📚 Documentation
- https://github.com/Gero-Labs/maestro-java-client#readme
- https://github.com/Gero-Labs/maestro-java-client#library-usage
- https://javadoc.io/doc/io.github.gero-labs/maestro-java-client/latest/index.html
🙏 Acknowledgments
Special thanks to:
- The https://www.gomaestro.org/ team for providing excellent blockchain indexing services
- All contributors who helped shape this initial release
- The Cardano developer community for their feedback and support
🐛 Support
Full Changelog: https://github.com/Gero-Labs/maestro-java-client/commits/v1.0.0