pink-web3

Port of rust-web3 to Pink contract.

web3

Ethereum JSON-RPC multi-transport client. Rust implementation of Web3.js library.

Crates.io

Documentation: crates.io

Usage

First, add this to your Cargo.toml:

toml [dependencies] pink-web3 = "0.19.0"

Example

```rust fn insomeinkquery() { use pinkweb3 as web3;

let transport = web3::transports::PinkHttp::new("http://localhost:3333")?;
let web3 = web3::Web3::new(transport);

// Calling accounts
let mut accounts = web3.eth().accounts().resolve().unwrap();
accounts.push("00a329c0648769a73afac7f9381e08fb43dbea72".parse().unwrap());

for account in accounts {
    let balance = web3.eth().balance(account, None).resolve().unwrap();
    debug_println!("Balance of {:?}: {}", account, balance);
}

Ok(())

} ```

If you want to deploy smart contracts you have written you can do something like this (make sure you have the solidity compiler installed):

solc -o build --bin --abi contracts/*.sol

The solidity compiler is generating the binary and abi code for the smart contracts in a directory called contracts and is being output to a directory called build.

General

Transports

Types

APIs

Parity-specific APIs

Cargo Features

The library supports following features: - pink - Enable pink HTTP and (or) signing support - signing - Enable account namespace and local-signing support - std - Enable std features for dependencies