OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Ethabi

Ethabi is an Apache-2.0-licensed Rust library and command-line ABI coder for encoding Ethereum smart contract calls and decoding returned values, typed parameters and event logs.

Independent OpenViST project profile, based on linked sources.

Ethabi — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Ethabi when Rust tooling or a command-line workflow needs to convert between Ethereum ABI definitions and encoded invocation or result data.

Who it is for

  • Rust developers building Ethereum contract tooling.
  • Developers who need a CLI for ABI call, parameter or event-log encoding and decoding.

Documented uses

  • Encode function-call data from a JSON ABI file, function name or signature, and parameters.
  • Encode parameters when their ABI types are provided inline.
  • Decode contract call results or typed ABI parameter data.
  • Decode event logs using ABI definitions, event identifiers, topics and data.
Before you choose

Requirements & limits

  • The repository states that Ethabi is not actively maintained.
  • Its stated support targets valid ABIs generated by recent Solidity versions; unsupported or invalid ABI inputs may need preprocessing.
  • The CLI installation command is cargo install ethabi-cli.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Encode ABI parameters with ethabi CLI

Convert explicitly typed parameter values into Ethereum ABI-encoded data.

Before you start

  • Install the CLI with cargo install ethabi-cli.
  • Provide each parameter’s ABI type and value.

Steps

  1. Install the CLI using the command below.

    Documented command
    cargo install ethabi-cli
  2. Run ethabi encode params with one or more -v pairs, such as ethabi encode params -v bool 1.

  3. Use the emitted encoded data as the result of the encoding step.

Expected outcome

The CLI outputs ABI-encoded parameter data; the documented bool example produces a 32-byte encoded value ending in `1`.

Guide limitations

  • The project is not actively maintained.
  • The library intends to support valid ABIs generated by recent Solidity versions, not ABIs invalidated by known Solidity bugs or external libraries that do not follow the specification. Unsupported ABIs should be pre-processed.
  • The documented recipe encodes parameters; it does not submit a contract call.
Source-based practical guide

Decode ABI-encoded parameters with ethabi CLI

Interpret ABI-encoded data using explicitly supplied parameter types.

Before you start

  • Install the CLI with cargo install ethabi-cli.
  • Have the encoded data and the corresponding ABI type or types.

Steps

  1. Install the CLI using the command below.

    Documented command
    cargo install ethabi-cli
  2. Run ethabi decode params with a -t option for each parameter type, followed by the encoded data.

  3. Read the decoded values printed by the CLI; the documented example uses -t bool and returns bool true.

Expected outcome

The CLI prints decoded parameter values in the supplied types.

Guide limitations

  • The project is not actively maintained.
  • The library intends to support valid ABIs generated by recent Solidity versions, not ABIs invalidated by known Solidity bugs or external libraries that do not follow the specification. Unsupported ABIs should be pre-processed.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
14 October 2026
Original website title
rust-ethereum/ethabi · Official homepage title · retained in its source language

Related options

solabi-rs — The Ethabi README names it as an alternative to consider because Ethabi is not actively maintained.

alloy-rs/core — The Ethabi README names it as an alternative to consider because Ethabi is not actively maintained.