Lava is a modular data network for scaling access to any blockchain. But there are many moving parts to the protocol which are not immediately easy to understand for developers and users alike.
In this article, we will share 3 metaphors which explain Lava from different perspectives. By the end, you should have a strong understanding of Lava at a high level.
To join our testnet, you can read our onboarding guide - non-technical and technical users are welcome in the Lava ecosystem.
In 2023, with the rise of Celestia, modular blockchains took center stage. Typically blockchains can be divided into three components or areas of functionality:
1. Data Availability & Consensus - coming to agreement about the state of the chain and ensuring the transactions exist
2. Settlement - finalizing transactions
3. Execution - hosting smart contracts and executing transactions
There is a fourth component to blockchain infrastructure that is just as critical as the above - RPC & indexing. For applications to do basic tasks such as retrieving your account balance, interacting with smart contracts and sending transactions to blockchains, they must make requests to RPC nodes.
RPC stands for Remote Procedure Call, but you can think about them simply as a format for fetching and sending data to blockchains ("read/write"). For example, to send your Ethereum transaction, your wallet would make an RPC call to a node which carries out this request and responds with confirmation that the transaction has been added to the mempool.
The speed of that transaction is impacted by the location of the node in relation to your request as well as the performance of the node e.g. uptime. With Lava, developers plug their apps into a network of RPC nodes and the protocol automatically routes requests to the best available provider.
Without RPC (and indexing i.e. requests for more complicated actions or specific data), applications would not be able to build on top of blockchains. The RPC node layer is the most critical part of the stack to making blockchains useful. They represent the doors to the House of Web3.
Let's look at some simple metaphors for explaining Lava.
Lava is a post office system, other providers are independent postmen.
Imagine today you lived in a country with only one postman. That postman would be the only person able to pick up, deliver your letter and deliver your friend's response back to you.
Now imagine the postman one day falls sick. What do you do? Suddenly there is no one who can deliver letters and communication with your friend is no longer possible. You realize how dependent you are on this one postman.
In web3, postmen are RPC node providers. They allow apps to send/retrieve data to/from blockchains. If they go down (usually from heavy traffic events such as NFT mints, hacks or maintenance) then a users ability to connect to a blockchain - and subsequently, all your cryptocurrency and funds - is completely stopped.
Today, there are many postmen but the service is extremely varied. The majority of postmen only serve a specific type of letter (e.g. a specific type of API) and so no one uses them. But this means the few postmen that can serve many different letter types (i.e. many types of APIs) are depended on by many people and if they fall sick - as they inevitably will - well, disaster strikes. In web3, this is further complicated by the fact that developers have to deeply integrate their node providers into their applications, making it more expensive and time-consuming to switch between providers.
It is a frustrating issue, given that there are postmen that can serve a specific letter very well - but it does not make sense for most people to use many different postmen, instead of just one general-purpose postman. The process of managing all these providers would be too complicated.
Lava represents a network of postmen across the country of web3. Any one can sign up to join the Lava Postman Collective and deliver letters through whatever means - bike, car, foot. You make one payment and the Lava algorithm will pick the best postman to help you send letters. No need for you to pick your own postman, or to handle relationships with many different vendors at once. The best postman get selected the most but if they're ever unavailable, there are many most postment willing to jump in.
Lava solves the problem of vendor discovery. With one subscription, developers are always connected to the best available node, eliminating the need to maintain different contracts with multiple providers.
By routing relays to the best providers, Lava is highly efficient.
Lava is a marketplace, other providers are individual shops.
Perhaps the most famous aggregator in web2 is Amazon. Amazon has created a platform which creates huge efficiency in cost and quality of service, by giving customers an easy way to discover and compare different vendors. On the flipside, vendors leverage Amazon to reach more customers and earn higher revenue.
Right now in web3, there is no aggregation service for infrastructure and this part of the stack is increasingly fragmented with the launch of new blockchains and rollups. For every rollup launching on Celestia, developers must use a new provider or set up a node to build on it. For every L2 launching on Ethereum, developers must use a new provider or set up a node to build on it. For every appchain launching on Cosmos, developers must use a new provider or set up a node to build on it.
This level of fragmentation creates huge variance across blockchains, with some ecosystems benefiting from the reliability and diverse offering of larger providers and some ecosystems relying on a broad mix of small or medium providers. Fragmented infrastructure increases the barrier to entry for building on a blockchain, and ultimately limits the rate of innovation across web3.
Lava remove the need for a developer to manually select individual providers. When a developer plugs their app into Lava, the protocol not only connects you to the best performing node available to get responses from, it also routes your request to the correct provider - by chain, protocol and API interface.
Instead of needing a new provider for each chain, Lava can support every chain and all their APIs in one place, dynamically flexing to the needs to the market. If a new rollup launches, someone can permissionlessly add its RPC module to Lava and the network will support it.
Like a permissionless marketplace, Lava gives vendors the ability to sell and developers the ability to access to everything in one place.
By create a protocol which aggregates all providers, Lava maximizes flexibility.
Lava is an app store, other providers are independent toy businesses.
The approach Lava is taking maximizes permissionless contribution at the protocol level. Consider a toy manufacturer. They conduct market research over several months, decide on which toys to build, source the materials, assemble a team and build the toy. If the company cannot be profitable or a toy does not fit with the overall business strategy, the toy is discontinued or is never sold to begin with.
Web3 today depends on many independent infrastructure businesses deciding what chains and APIs (toys) to sell. If a developer cannot find a provider that supports the chains or APIs they would like to build with, a developer will need to either use a suboptimal solution, build the infrastructure himself or build a different project than the one he initially intended to build.
The fragmented state of blockchain infrastructure limits innovation across web3.
The power of Lava is that it is modular, open and hyper-responsive to market needs. Chains and APIs are permissionlessly added to Lava as modules called "specs", with contributors incentivized to meet demand as quickly as possible. This is similar to an app store model where developers innovate on the services (here API modules) and the app store provides an interface to discover the modules that fit a user's needs.
Lava can therefore be the most holistic and flexible infrastructure service for developers, harnessing open-source and incentivized contribution to rapidly integrate new chains and APIs.
By creating the space for permissionless and modular contribution, Lava is hyper-dynamic.
The power of modularity is the flexibility to build whatever.
Celestia was the first modular blockchain to give developers this ability, unlocking new innovations such as Eclipse - an SVM settling to Ethereum with data availability on Celestia - and a wave of rollup as a service providers such as Caldera.
If you understand Celestia, you have a simple way to understand Lava.
Celestia (and other modular blockchain layers like Fluent, a zkWASM execution environment), gives developers the modular base layer to build blockchains.
Lava gives developers the modular base layer to access blockchains. Build whatever, wherever.
Lava is a single network for fast, reliable and cost-efficient access to any blockchain. Its first service is to provide a performant RPC solution for developers and users, and it will later expand to any type of data infrastructure e.g. indexing and oracles.
If you’re looking to grow with us as we move towards Mainnet, we are already working with:
You can get in touch with the Lava team here: lavanet.xyz/partnerships
Alternatively, join our Discord to speak directly with our community and ask questions: discord.gg/bKkEtU6AMQ
Mainnet is coming in early 2024, bringing us closer to Lava's vision of a scalable, modular data layer for web3. We welcome all feedback and participation to help battle-test the network.
Thank you for taking part in the Lava journey.
Visit the website: lavanet.xyz
Create and manage RPC endpoints: accounts.lavanet.xyz/register
Read the docs: docs.lavanet.xyz
Meet the community: discord.gg/bKkEtU6AMQ
Follow our Twitter: twitter.com/lavanetxyz
Read our research papers: community.lavanet.xyz