webthree 2.7.5 copy "webthree: ^2.7.5" to clipboard
webthree: ^2.7.5 copied to clipboard

WebThree - a web3 library for dart for interaction with ethereum nodes using HTTP or WebSocket. Supports custom credentials providers like WalletConnect and Metamask.

example/main.dart

import 'package:http/http.dart';
import 'package:webthree/webthree.dart';

const String privateKey =
    'a2fd51b96dc55aeb14b30d55a6b3121c7b9c599500c1beb92a389c3377adc86e';
const String rpcUrl = 'http://localhost:7545';

Future<void> main() async {
  // start a client we can use to send transactions
  final client = Web3Client(rpcUrl, Client());

  final credentials = EthPrivateKey.fromHex(privateKey);
  final address = credentials.address;

  print(address.hexEip55);
  print(await client.getBalance(address));

  await client.sendTransaction(
    credentials,
    Transaction(
      to: EthereumAddress.fromHex('0xC914Bb2ba888e3367bcecEb5C2d99DF7C7423706'),
      gasPrice: EtherAmount.inWei(BigInt.one),
      maxGas: 100000,
      value: EtherAmount.fromInt(EtherUnit.ether, 1),
    ),
  );

  await client.dispose();
}
16
likes
140
pub points
70%
popularity

Publisher

verified publisherdevopsdao.com

WebThree - a web3 library for dart for interaction with ethereum nodes using HTTP or WebSocket. Supports custom credentials providers like WalletConnect and Metamask.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

build, build_config, built_collection, code_builder, collection, convert, dart_style, http, js, json_rpc_2, meta, path, pointycastle, stream_channel, stream_transform, typed_data, universal_html, uuid

More

Packages that depend on webthree