
A Ruby library to build, sign, and broadcast Ethereum transactions with full smart contract support.
eth.rb is a straightforward Ruby library designed for developers who want to build, sign, and broadcast Ethereum transactions in any environment where Ruby runs. It separates key management from node management, allowing users to sign transactions and handle keys locally or remotely, then broadcast through any Ethereum node via HTTP or IPC. The library supports a wide range of Ethereum Improvement Proposals (EIPs), including token transfers (ERC20), ENS domain resolution, replay protection, and multiple transaction types such as EIP-1559 and newer transaction envelopes. It also supports smart contract deployment, interaction, and Solidity contract compilation directly from Ruby.
The library is intended for Ruby developers working on Ethereum infrastructure, DeFi applications, or enterprise blockchain solutions who need a native Ruby toolset for Ethereum interactions. It supports advanced features like EIP-712 typed data signing, smart contract authentication (EIP-1271), and custom Solidity error handling (ERC-6093). The modular design allows integration with any local or remote Ethereum node, making it flexible for various deployment scenarios.
What sets eth.rb apart is its comprehensive coverage of Ethereum standards and transaction types combined with Ruby-native tooling, including ABI encoding/decoding, RLP encoding, and Solidity bindings. It is fully open source under Apache 2.0 and emphasizes thorough documentation and testing, aiming for 100% API coverage and unit test coverage. Developers can get started by installing the gem via RubyGems and referencing detailed API docs and usage examples on GitHub and the project wiki.
Ruby developers working with Ethereum often lack a native, comprehensive library to build, sign, and broadcast transactions while supporting the latest Ethereum standards. Managing keys and nodes separately and handling complex transaction types can be cumbersome without a dedicated tool.
Supports IPC and HTTP connections to Ethereum nodes for broadcasting transactions and querying blockchain data.
Manages Secp256k1 keys and encrypted JSON keystores for secure key handling.
Handles legacy, EIP-1559, and advanced transaction envelopes including access and authorization lists.
Developers can create wallets that generate keys, sign transactions, and interact with Ethereum smart contracts entirely in Ruby.
Use eth.rb to programmatically execute ERC20 token transfers, interact with DeFi protocols, and manage complex transaction types.
Integrate Ethereum transaction capabilities into Ruby-based enterprise applications with secure key management and node communication.
Discover trusted tools and services in the QuickNode Marketplace. Everything you need to launch faster and scale smarter.
Explore web3 competitors and apps like Eth.rb.

A Document Object Model for Web APIs designed to simplify API consumption and integration.

0x provides battle-tested APIs to embed fast, gasless, and deeply liquid crypto trading into decentralized applications.
Blast API is a decentralized Web3 infrastructure platform providing geographically distributed blockchain node APIs to improve reliability and latency.

The Graph is a decentralized indexing protocol that organizes blockchain data and makes it easily accessible via GraphQL.
Virtually operated Web3 networks that replicate real blockchain networks for development, testing, and staging without using real assets.

Connext is a secure, fast modular interoperability protocol enabling cross-chain fund bridging and asynchronous Solidity development.
Rarible API is a fast, unified NFT API infrastructure providing real-time data and executable market features across Ethereum, Base, Polygon, and more than 10 other chains.

A fully managed, customizable rollup deployment platform providing scalable, secure, and high-performance blockchain infrastructure.

Network APIs provides web3 developer tools focused on blockchain network interactions and API services.
Open Source | |
|---|---|
| Price (Monthly) | Free |
| Price (Annual) | Free |
| Messaging | N/A |
| Support | Community support via GitHub |
| Analytics |
The eth.rb project provides comprehensive documentation including API references, usage examples, and a wiki to help developers get started and integrate Ethereum functionality in Ruby applications.
| Composability | |||
| Cross-Chain | |||
| Customizability | |||
| Developer Support | |||
| Ease of Integration | |||
| Performance |