Ruby is a high-level, general-purpose language that provides support to multiple programming paradigms. The developers of Ruby designed the language with an emphasis on simplicity and programming productivity. The high-level language considers everything as an object, including primitive data types.
Ruby has a massive fanbase of developers as it allows them to learn and use it for programming purposes. Developers have accepted Ruby worldwide since its launch. Ruby developers are a part of the biggest tech communities spread across the world.
The below guide will detail the process of connecting to the Ethereum network using Ruby.
Ethereum Network Using Ruby
In this guide, we will connect to the Ethereum network using a Ruby gem called ‘eth.rb.’ Using eth.rb, we can directly make direct JSON RPC calls to a node. The gem also helps boast several functionalities listed in their official Github repo.
We’ll look closely at the process of installing and interacting with the package. Further, we will learn how to set up the package locally on our computer and retrieve the block height from our node. Let’s get started!
What are the prerequisites for this?
- Ruby version >= 2.6, < 4.0
- A code editor
- Terminal (Command Line)
Installing the Eth Gem
Let’s first check if we have Ruby installed on our computer. For this, open a terminal and run the below command:
If it returns a version satisfying the prerequisites, i.e., later than 2.6, you can start installing the eth gem. But, if the command is not recognized, you must install Ruby. Ensure that you install a new version of Ruby if you have a version older than 2.6.
Note: macOS users can use rbenv or RVM (Ruby Version Manager) to manage a different Ruby version. Since Ruby will be installed in a sandbox, you can easily make modifications without any worry.
Now is the time to install the eth gem. Eth Gem will help establish a connection with the Ethereum network using the Ruby language. Simply type the below command in the command line using the RubyGems package manager:
Getting Started with Zeeve
It is essential to have an API endpoint handy, as you will require it to talk to their network. You can skip this section if you’d like to deploy, host, and manage your own infrastructure. Else, you can allow us to perform all the operations by creating an account on Zeeve.
Create an Endpoint
All you have to do is create an endpoint on the Ethereum network, and Zeeve will perform all the necessary steps.
You can go to the ‘Manage Services’ tab -> API Endpoints -> Create Endpoints -> copy the HTTP Provider link.
The HTTP link will help us to connect to the Ethereum network.
It is time to use our eth gem and Zeeve endpoint to get the current block number using our node.
Either you can create a new file script.rb directly in your file system or through your terminal. If you go through the second process, you can use this command:
Now, open the new file in a code editor and add the following code:
Note: Do not forget to replace the node_url with the HTTP provider.
While it may sound complex to you while reading the code, let us help you understand the code. The first line indicates that we are importing the eth gem. The second line depicts the creation of a new Ethereum RPC client. After that, we receive the latest block number in the third line. And finally, we are printing the block number in the last line.
Note: Since the result will come in the hexadecimal format, we are using the to_i(16) function to convert it into an integer, base 16.
Run the Script
It is time to execute the script by running the below code in your Terminal:
After executing the above command, you can view the newest Ethereum block number returned on the line. This marks the successful connection to the Ethereum network using Ruby.
Connecting to the Ethereum network using ruby language can be a mundane task if you’d like to deploy, host, and manage your own infrastructure. However, you can choose Zeeve as your service provider, which will help you to perform all the operations seamlessly while saving upto 97% in time and 60% in costs.
We support over 30 Blockchain Protocols, and our team has deployed and managed 4000+ nodes for our clients. Zeeve’s Ethereum Node Service is developer friendly with ready plugins and enterprise-grade uptime.
Launch your Ethereum Blockchain node with Zeeve in minutes.