Backend API libraries
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, there are many convenience libraries 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!
Related topics
Related tutorials
- Set up Web3js to use the Ethereum blockchain in Javascript – Instructions for getting web3.js set up in your project.
- Calling a smart contract from JavaScript – Using the DAI token, see how to call contracts function using JavaScript.