reown_yttrium 0.0.1
reown_yttrium: ^0.0.1 copied to clipboard
Reown is the onchain UX platform that provides toolkits built on top of the WalletConnect Network
Reown Yttrium #
A Flutter plugin that provides blockchain interaction capabilities through the Reown platform, built on top of the WalletConnect Network. This plugin is part of the Yttrium ecosystem, a cross-platform library designed for working with smart accounts in the Ethereum ecosystem.
Overview #
Reown Yttrium is a powerful Flutter plugin that enables seamless blockchain interactions in your Flutter applications. It provides essential abstractions and primitives for Wallets and DApps to interact with and implement smart account functionality. A primary goal is to enable externally owned account (EOA) wallets to offer advanced features such as batch transactions and transaction sponsorship to their users.
Features #
- ERC20 token balance checking
- EIP-1559 transaction fee estimation
- Transaction preparation and execution
- Smart account support
- Cross-platform support (iOS and Android)
- Built on the WalletConnect Network
Standards Support #
The plugin implements the following Ethereum standards:
- ERC-4337 (in development)
- ERC-7702 (in development)
Installation #
Add the following to your pubspec.yaml
:
dependencies:
reown_yttrium: ^0.0.1
Platform Requirements #
- iOS: 13.0 or higher
- Android: API level 21 or higher
Usage #
Initialization #
First, initialize the plugin with your project ID and pulse metadata:
final reownYttrium = ReownYttrium();
await reownYttrium.init(
projectId: 'your_project_id',
pulseMetadata: pulseMetadata,
);
Check ERC20 Token Balance #
final balance = await reownYttrium.erc20TokenBalance(
chainId: 'chain_id',
token: 'token_address',
owner: 'owner_address',
);
Estimate Transaction Fees #
final fees = await reownYttrium.estimateFees(
chainId: 'chain_id',
);
Prepare Transaction #
final preparedTx = await reownYttrium.prepareDetailed(
chainId: 'chain_id',
from: 'from_address',
call: call,
localCurrency: currency,
);
Execute Transaction #
final executionDetails = await reownYttrium.execute(
uiFields: uiFields,
routeTxnSigs: routeTxnSigs,
initialTxnSig: initialTxnSig,
);
Architecture #
This Flutter plugin is built on top of the Yttrium core library, which is written in Rust and provides the following architecture:
Core Rust Library
↓
Native Library (iOS/Android)
↓
Flutter Plugin
License #
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Contributing #
Contributions are welcome! Please feel free to submit a Pull Request.
Support #
For support, please visit: