Infura provides the tools and infrastructure that allow developers to easily take their blockchain application from testing to scaled deployment - with simple, reliable access to Ethereum and IPFS.
There are many pain points for blockchain developers that can be solved by Infura. Here are a few examples:
Blockchain applications need connections to peer-to-peer networks which can require long initialization times. It can take hours or days to sync a node with the Ethereum blockchain and can use more bandwidth and storage than you had planned.
It can get expensive to store the full Ethereum blockchain and these costs will scale as you add more nodes to expand your infrastructure. As your infrastructure becomes more complex, you may need full-time site reliability engineers and DevOps teams to help you maintain it.
Infura solves all of these problems by providing infrastructure and tools that make it quick, easy and cost-effective for developers to connect to Ethereum and IPFS and start building awesome decentralized applications. No syncing required. No complex set-ups. Just your decentralized app, live and functioning, right now.
Our Ethereum and IPFS API suite serves and supports thousands of decentralized applications every day and offers request response times up to 20x faster than other services or self-hosted solutions. We provide 24/7 access to expert support teams and have a strong track record of supporting developers for over 3 years.
Our core service is free and provides everything you need to start building awesome blockchain applications. Check out this step-by-step tutorial to help you get set-up with Infura and start using the Infura Ethereum API.
A project is a unique set of API credentials to help you identify your different applications or systems that use Infura. They allow you to see analytics and control security settings distinct to individual use-cases.
If you’re new to blockchain, you can select our Core subscription, which offers free access to our Ethereum APIs and allows you to create up to 3 projects.
If you want to create more than 3 projects, you can upgrade to the Developer tier which allows you to create 10 projects.
You can check out our subscriptions and pick the right plan for your project here.
Infura supports Ethereum mainnet and testnets (Rinkeby, Ropsten, Kovan, Görli), IPFS, Filecoin (Beta), Eth2 Beacon Chain (Beta), Polygon PoS (Beta), Optimism Ethereum, and Arbitrum Rollup.
The ConsenSys developer portal is a place to get started and find the tools you need to develop and build applications on the Ethereum blockchain. There you’ll find the most popular knowledge bases, infrastructure tools, programming libraries, and more that will teach you how to build software on Ethereum. We recommend taking a look through the portal and reading about all the developer tools and options before getting started.
Through a collaboration with the Azure Blockchain team at Microsoft, Infura is natively supported in the Azure Blockchain Development Kit extension for VS Code. This integration makes it easy for developers to access and send requests to their Infura projects on any of our supported Ethereum networks — without having to leave the VS Code interface. Learn how to connect to Infura in VS Code here.
Vipnode is an open source project designed for matchmaking Ethereum nodes with relevant peers. By running our own private Vipnode pool, we can ensure that our Ethereum nodes are all peered with each other. By running a separate pool for different kinds of nodes, we can carefully control our internal network topology of our Ethereum nodes.
Check out our blog post to learn about three new features we added to Vipnode that allow you to create complex arrangements of peer networks.
If you’re interested in developing on Ethereum, spinning up your own node is probably the first place you start. Maybe you build an awesome Ethereum-based app: a wallet, for instance. As you build out more features and add richness to the user experience, adoption accelerates. Suddenly you need to accommodate more users, higher transaction volumes and still ensure a stable and seamless user experience. At this point, a single node won’t cut it anymore.
There are three ways to scale your infrastructure:
Do it yourself. If you have the resources to build out a development team and employ full time Site Reliability Engineers, you can scale up your own infrastructure by spinning up and maintaining more Ethereum nodes in-house;
Outsource your infrastructure. If you don’t have the resources to grow and maintain your own infrastructure - and you’d rather dedicate development time to your core product - you can use cloud-based node service providers like Infura to connect to Ethereum and IPFS through their APIs.
Adopt a hybrid infrastructure model. If your own node serves you well but you want the flexibility to tap into node service providers as and when you need them, then a hybrid infrastructure model might be for you.
‘Hybrid infrastructure’ simply means using your own node in combination with cloud-based nodes. Tried and tested node service providers like Infura have the resources to ensure maximum network stability and uptime. Maintaining your own node concurrently offers you the flexibility to confirm and verify transactions yourself. This approach diversifies your infrastructure and allows you to tap into the scale and stability of cloud-based nodes to help you manage spikes in traffic.
MetaMask (by default) uses Infura, but has the ability to switch to another node provider, even somebody’s own node. We continue to work with MetaMask and more Web3 browser teams.
Geth: Go Ethereum is one of the three original implementations (along with C++ and Python) of the Ethereum protocol. It is written in Go, fully open source and licensed under the GNU LGPL v3.
OpenEthereum: An Ethereum client developed by Parity Technologies and Gnosis using the Rust programming language, licensed under the GNU GPL v3 license.
Hyperledger Besu: Hyperledger Besu is an open source Ethereum client developed under the Apache 2.0 license and written in Java.
Teku: Teku is a Java implementation of the Ethereum 2.0 Beacon Chain under the Apache 2.0 license, and maintained by the same team behind Besu.
Lotus: Lotus is a Filecoin implementation written by Protocol Labs in Go and is a suite of command-line applications: lotus, lotus-miner and lotus-worker. Lotus is a universally open project and dual-licensed under MIT + Apache 2.0 terms.
Go-IPFS: Go-IPFS is the primary reference implementation of IPFS. It is a command-line application, though can also be used as a library in other Go programs. The go-IPFS project is dual-licensed under the Apache 2.0 and MIT terms.
Bor/Heimdall: The Bor client is a fork of the Go-Ethereum used to operate the Polygon PoS protocol. The Heimdall client is a fork of the Tendermint client used for the validation layer of the Polygoin PoS network.
l2geth: The l2geth client is used to operate the Optimismic Ethereum protocol.
Arbitrum: The Arbitrum client is used to operate the Arbitrum Rollup protocol.