NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1783 most downloaded on pub.dev
A Celo compatible Dart library to connect to Ethereum clients. Send transactions and interact with smart contracts! Pay transaction fees using `feeCurrencies` on Celo.
Last release 3 months ago
28 Jun 2026
Release timing varies
gaps range from 2 weeks to 13 months
Most releases are documented
notes for 36 of 45 stable releases
2 versions withdrawn
withdrawn after publishing
9 years old
59 releases · first in 2018
Fix EIP-1559 signed transaction prefix (#169).
Added support for Celo type 123 transactions
type 123 transactions* Improve package score.
One column per quarter.
Refactor and cleanup deprecated methods/classes.
Address parsing regex bug fixed.
* Minor improvements.
* Nullable topics.
Use http package version ^1.1.0.
* EIP-1559.
Nothing published for this version
Ditch dependency on collection.
Fix type-error to get useful RpcError.
Remove build.yaml that was pointing to obsolete builder.
* Deprecate async methods.
* Update dependencies.
Refactor parts of the project into ERC20 and Web3_Browser
Ensuring quality and performance.
Adds name, symbol and decimals functions to ERC20.
name, symbol and decimals functions to ERC20.Fix signing legacy transactions without gas and without a client.
* Support EIP-1559 transactions.
Fix the Web3Client.custom constructor not setting all required fields.
Web3Client.custom constructor not setting all required fields.Support overloaded methods for generated contracts
Add EthPrivateKey.publicKey getters
EthPrivateKey.publicKey getterswindow.ethereum always being non-null, even if no provider is availableFix a generator crash for unexpected devdoc values
devdoc valuesFix EthPrivateKey.createRandom sometimes failing
EthPrivateKey.createRandom sometimes failingFix contract generation for events
Respect the value parameter in estimateGas
value parameter in estimateGasAdd package:web3dart/browser.dart, a library for using this package in Ethereum-enabled browsers.
package:web3dart/browser.dart, a library for using this package in
Ethereum-enabled browsers..abi.json file, add a dev-dependency on build_runner and run
(flutter | dart) pub run build_runner build.package:web3dart/contracts/erc20.dart library for interacting with an
ERC-20 smart contract.__Breaking__: Renamed TransactionReceipt.fromJson to TransactionReceipt.fromMap
TransactionReceipt.fromJson to TransactionReceipt.fromMapbackgroundIsolate option from Web3Client.
For background isolates, instead use runner: await IsolateRunner.spawn() from package:isolate.TransactionInformation.r and TransactionInformation.s from Uint8List to
BigIntmaxGas argument, this library will now estimate it instead of using
a fixed upper bound.ecRecover and isValidSignature to verify messages. Thanks, brickpop!compressPublicKey and decompressPublicKey to obtain a compressed or expanded version of keys.getLogs method to Web3Client. Thanks, jmank88!sendRawTransaction to send a raw, signed transaction.hexToDartInt not actually parsing hex (#81)package:isolate migrates to null safetyNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
include a 0x for hex data in eth_estimateGas * thanks, @Botary
0x for hex data in eth_estimateGas * thanks, @BotaryFixed a bug when decoding negative integers
Nothing published for this version
In 1.2.1, the atBlock parameter on estimateGas was deprecated and will be ignored.
estimateGas method on Web3Client to estimate the amount of gas that
would be used by a transaction.In 1.2.1, the atBlock parameter on estimateGas was deprecated and will be ignored.
Nothing published for this version
Fix parsing transaction receipts when the block number is not yet available. Thanks to @chart21 for the fix.
Added getTransactionReceipt to get more detailed information about a transaction, including whether it was executed successfully or not.
getTransactionReceipt to get more detailed information about a
transaction, including whether it was executed successfully or not.This version contains breaking changes! Here is an overview listing some of them.
Basically a complete rewrite of the library * countless bug fixes, a more fluent and consistent api and more features:
enableBackgroundIsolate to true when creating a Web3Client to try it out.addedBlocks, pendingTransactions and events for auto-updating
streams.dispose() method which should be called to stop the
background isolate and terminate all running streams.This version contains breaking changes! Here is an overview listing some of them.
| Before | Updated API |
| :------------* | -----:|
| Creating credentials via Credentials.fromPrivateKeyHex | Use the EthPrivateKey class or, even better, client.credentialsFromPrivateKey |
| Sending transactions or calling contract functions | The api has been changed to just a single methods instead of a transaction builder. See the examples for details. |
| Low-level cryptographic operations like signing, hashing and converting hex <-> byte array <-> integer | Not available in the core library. Import package:web3dart/crypto.dart instead |
If you run into problems after updating, please create an issue.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Added getTransactionByHash method * thank you, maxholman!
getTransactionByHash method * thank you, maxholman!Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
More solidity types, not with encoding.
Nothing published for this version
Nothing published for this version
* Send and sign transactions
Your coding agent can read these notes before it upgrades. Set up the MCP server →