Help translate this page

🌏

You’re viewing this page in English because we haven’t translated it yet. Help us translate this content.

Development of smart contracts and creating tokens on Ethereum, buying and selling ETH, other consulting.
This page is incomplete and we'd love your help. Edit this page and add anything that you think might be useful to others.

Backend API libraries

Sam Richards
Last edit: @samajammin, January 29, 2021
Edit page

In order for a software application to interact with the Ethereum blockchain (i.e. read blockchain data and/or send transactions to the network), it must connect to an Ethereum node.

For this purpose, every Ethereum client implements the JSON-RPC specification, so there are a uniform set of endpoints that applications can rely on.

If you want to use a specific programming language to connect with an Ethereum node, roll your own solution but several convenience libraries exist within the ecosystem that make this much easier. With these libraries, developers can write intuitive, one-line methods to initialize JSON RPC requests (under the hood) that interact with Ethereum.

Prerequisites

It might be helpful to understand the Ethereum stack and Ethereum clients.

Why use a library?

These libraries abstract away much of the complexity of interacting directly with an Ethereum node. They also provide utility functions (e.g. converting ETH to Gwei) so as a developer you can spend less time dealing with the intricacies of Ethereum clients and more time focused on the unique functionality of your application.

Available libraries

Alchemy - Ethereum Development Platform.

BlockCypher - Ethereum Web APIs

Infura - The Ethereum API as a service.

Cloudflare Ethereum Gateway.

Nodesmith - JSON-RPC API access to Ethereum mainnet and testnets.

Ethercluster - Run your own Ethereum API service supporting both ETH and ETC.

Chainstack - Shared and dedicated Ethereum nodes as a service.

QuikNode - Blockchain developer platform.

Python Tooling - Variety of libraries for Ethereum interaction via Python.

web3j - A Java/Android/Kotlin/Scala integration library for Ethereum.

Rivet - Ethereum and Ethereum Classic APIs as a service powered by open source software.

Nethereum - An open source .NET integration library for blockchain.

Further reading

Know of a community resource that helped you? Edit this page and add it!