Things are moving very quickly in the web3 space, and there is hardly anyone attempting to break things down for the average person to understand. The truth is that all of this super technical content makes things appear scary to the average person; unfortunately, developers do not see things this way. It’s almost as if they’re competing to see who can appear more technical. In Web2, every web or mobile application you interact with has three major components, which are
- The front-end (what users interact with)
- The back-end (what users don’t see)
- The Database (where critical data is stored)
The frontend of a web development project is the part of the project that users will see and interact with when they visit the site. This includes the design of the user interface, the layout of the pages, and the overall user experience. The front-end for both web2 and web3 are typically the same. If you are a web2 frontend developer you can easily transition to become a web 3 frontend developer, because everything is pretty the same.
A web3 application such as Decentraland resembles a normal web2 application because both front-ends are mostly built with React, a popular developer framework for web and mobile applications. The real magic for Web3 applications occurs in the backend. Web3’s backend frameworks and database types that support user-defined ownership are fully distinct. Web 3 applications utilize decentralized databases as opposed to web 2 applications’ centralized databases. This web3 application’s decentralized database requires whole new backends and new primitives such as wallets.
Thanks to decades of development, the tools for designing, deploying, and maintaining Web2 applications are very easy for developers to use. Web2 development is easy because it has built-in solutions, a mature infrastructure, shared code libraries, and frameworks that are easy to use.
Conversely, Web3 still necessitates specialized skills to interface with complicated infrastructure and typically entails numerous redundant processes due to the less established stack, forcing teams to essentially recreate the wheel. Still, there has been a lot of progress made in the tools that will be used to train the next million or more web3 engineers.
Protocol layer
One of the first things a web3 developer must do is to decide on a blockchain protocol to build on or master.. Cardano development is different from Solana development, and Polkadot development is very different from Ethereum development, vice verse. Meanwhile below are some of the available blockchain. If you want to build a career as a blockchain developer, you have to first decide which blockchain best resonates with you.
Even though layer-1 blockchains have problems with scalability and speed, their growing popularity and the resulting large amount of liquidity have led to the creation of layer-2 blockchain.
Layer 2 blockchain solutions offer scaling solutions that can greatly improve the performance and capacity of existing blockchain platforms. Layer 2 solutions are built on top of existing blockchains and aim to improve their performance by adding an extra layer of security and efficiency.
Some of the most popular Layer 2 solutions include the Optimism, Arbitrum, Lightning Network, and Plasma.
These layer-2, or L2, blockchain solutions make it possible to process thousands of low-value transactions after they have been validated on parallel blockchains. The records are then moved to the main blockchain, or mainnet, to make sure they can’t be changed.
For applications that need to transmit value from one blockchain to another, developers will want to use cross-chain bridges such as Hop or Synapse. Once these decisions have been taken, developers can begin implementing the components that enable user applications.
Infrastructure primitives
Node infrastructure –
Nodes are the points of contact between an app and a blockchain. They are more like computers that participate in the operation of a blockchain network. After a user interacts with an application, these machines read the blockchain’s current status and publish updates to it. Node infrastructure companies such as Infura, and Alchemy make it simple for developers to set up, operate, or access blockchain nodes, saving them considerable time and resources in the process.
- The Alchemy platform is a set of tools and services that help developers build blockchain applications. The platform includes a blockchain explorer, wallet, and a development studio. The blockchain explorer allows developers to view and interact with the blockchain. The wallet allows developers to store and manage their digital assets. The development studio provides a workspace for developers to build and test their applications.
- Infura: Infura is a developer platform for building large-scale applications on the Ethereum network. Infura makes it easy for developers to access Ethereum’s decentralized ecosystem by providing tools and infrastructure to manage decentralized applications, connect to the Ethereum blockchain, and interact with decentralized technologies. Infura provides developers with a secure, reliable, and scalable way to access the Ethereum network. Infura’s infrastructure is built on top of AWS and Google Cloud, and is distributed across multiple data centers around the world.
Wallet & Key Management –
A blockchain wallet is a digital wallet that allows users to store, send, and receive cryptocurrencies. The private key associated with a blockchain wallet is used to sign transactions and provide proof of ownership. A blockchain wallet uses a pair of cryptographic keys, a public key and a private key, to interact with the blockchain. The public key is used to generate unique addresses that can be used to receive cryptocurrency, while the private key is used. Blockchain wallets, such as trust wallets, enable users to handle the private keys required to conduct transactions within web3 applications. Providers of wallet and key management, like as Web3Auth and Pine Street Labs, enable developers to construct safe connections between blockchain wallets and user-facing applications.
- Web3Auth is a decentralized authentication protocol that allows you to login to dapps and websites without having to remember multiple passwords. Web3Auth is a great solution for managing your online identity in a more secure and convenient way.
Oracle:
Blockchains keep track of transactions and “state” for ordinary Ethereum applications (balances, smart contracts, and other variables). External data, such as transaction history from other blockchains or “real world” data like the weather in San Francisco, is not something it can store or interact with natively. An oracle is a service that provides data and information to smart contracts. Chainlink and Flux are two popular oracle services. Oracles like Chainlink and Flux help smart contracts to interact with external data sources and APIs.
Identity
How can I get started with integrating identity into my web3 app? There are a few different ways you can get started with integrating identity into your web3 app. One way is to use a service like Spruce ID, which provides an easy-to-use toolkit that allows you to quickly add support for ENS-based login to your app. Another option is to use a service like Lit Protocol, which provides a suite of tools that can be used to grant access to content, software, and other data using tokens or NFTs.
Decentralized compute:
Decentralized compute refers to the ability to distribute computation resources across a network so that no single entity has complete control over those resources. This can be contrasted with the centralized model of computation, in which a single entity controls all of the resources and all of the users must interface with that entity in order to use those resources. Currently, the majority of computation is provided by centralized suppliers such as AWS. There are many potential benefits to decentralizing computation. For one, it can make it more difficult for a single entity to monopolize the resources . Decentralized compute is a shift toward community-owned networks in which low-cost compute resources are distributed without permission. Companies such as Akash Network and Aleph.im have developed to provide peer-to-peer computing resources that are tailored for smart contracts and blockchain applications and offer excellent performance.
- Akash Network is a decentralized cloud service provider that allows users to deploy and host applications on a scalable, secure, and permissionless network. Akash Network is a great solution for those who need a scalable, secure, and decentralized cloud solution.
Decentralized storage:
Decentralized storage is a type of storage system where data is not stored in a centralized location. Instead, it is spread out across a network of computers, each of which stores a small piece of the data. This type of storage is often used in peer-to-peer networks, as it offers a number of advantages over centralized storage. One advantage of decentralized storage is that it is much more resistant to attacks. If one computer in the network is hacked or taken. Offline, the rest of the network will still have a copy of the data. This redundancy makes it much harder for someone to corrupt or delete data. Another advantage is that decentralized storage is often cheaper than centralized storage. This is because there is no need to buy or maintain expensive servers. Instead, the cost is spread out across the network of computers. With decentralized storage data can be stored using peer-to-peer data storage protocols such as IPFS, Arweave*, and Ceramic Network* rather than a centralized database. The web3 blogging platform Mirror, for instance, is built on Ethereum but maintains actual blog content on Arweave.
- IPFS is a decentralized protocol that enables you to access content from anywhere in the world. It’s like a peer-to-peer network that allows you to share and access content without having to go through a central server. You can think of IPFS as a way to make the internet more resilient and censorship-resistant.
- Arweave is a new decentralized storage network. It is a permanent and secure data storage solution that is well suited for a variety of data types. Arweave is a great solution for long-term data storage and access.
- Ceramic is a new decentralized protocol that enables you to access content from anywhere in the world. It’s like a peer-to-peer network that allows you to share and access content without having to go through a central server. You can think of Ceramic as a way to make the internet more resilient and censorship-resistant.
Blockchain interoperability:
In the context of blockchain technology, interoperability refers to the ability of different blockchain systems to communicate and work with each other. This means that users of one blockchain system should be able to seamlessly connect and interact with users of another blockchain system.
The concept of blockchain interoperability was first proposed in a white paper published by the Interchain Foundation in 2016. The paper outlined a vision for a decentralized internet.
Why is blockchain interoperability important?
There are a number of reasons why blockchain interoperability is seen as an important goal by many in the blockchain community. Firstly, blockchain interoperability would allow for a greater degree of competition and innovation in the blockchain space.
Many different blockchains exist but few have the ability to exchange value and make use of information cross-chain. Interoperability protocols like
- Astar Network :Astar Network is a multi-chain decentralized internet protocol that aims to provide a solution for blockchain interoperability. The protocol uses a cross-chain relay mechanism to allow different blockchains to interact with each other. The Astar Network protocol is currently in development and is expected to launch in 2020.
- Axelar Network :Axelar Network is a cross-chain decentralized platform that also aims to provide a solution for blockchain interoperability. The platform uses a relay mechanism to allow different blockchains to interact with each other. Axelar Network is expected to launch in 2020.
- LayerZero: LayerZero is a cross-chain decentralized platform that also aims to provide a solution for blockchain interoperability. The platform uses a relay mechanism to allow different blockchains to interact with each other. LayerZero is expected to launch in 2020.
Oracle:
Typical Ethereum applications maintain transaction history and “state” on the blockchain (balances, smart contracts, and other variables). It cannot, however, store and interact natively with data from external sources, such as transaction history from other blockchains or “real world” data such as the San Francisco weather. An oracle is a third-party service that writes data to the Ethereum blockchain. Oracle services can provide data from any online or offline source. For example, an oracle service could provide the real-time price of a cryptocurrency or the result of a sports match. Dapps use oracles to retrieve data from outside the Ethereum network. Some of the Oracles we have are:
- Chainlink: Chainlink is a decentralized network that enables smart contracts to securely access off-chain data feeds, web APIs, and traditional bank payments. Chainlink is constantly delivering data to smart contracts, so they can be as reliable as the data they receive.
- Flux: Flux is a solution to the problem of trustless data in the cryptocurrency space. It is a decentralized oracle network that allows anyone to request data from any source and receive
Developer tools
On top of the infrastructure primitives that enable apps to communicate with blockchain networks are tools that enable developers to engage with the infrastructure primitives more effortlessly.
Frameworks & IDEs:
Developer frameworks consist of code libraries built by other developers to facilitate development. Web3 frameworks such as
- Truffle: Truffle is a development environment, testing framework and asset pipeline for Ethereum, aiming to make life as an Ethereum developer easier. With Truffle, you get: Built-in smart contract compilation, linking, deployment and binary management. Automated contract testing against both JavaScript and Solidity testrpc. Configurable build pipeline with out-of-the-box integration for popular Continuous Integration providers. Network management for deploying to many
- Moralis: Moralis is an end-to-end toolchain for building decentralized applications (DApps) on the Ethereum blockchain. It includes a suite of developer tools, a decentralized application (DApp) store, and a user-friendly wallet. Moralis is designed to make it easy for developers to build, test, and deploy DApps.
- Tatum: Tatum is an open source toolchain for building, testing, and deploying decentralized applications (DApps) on the Ethereum blockchain. It includes a suite of developer tools, a decentralized application (DApp) store, and a user-friendly wallet. Tatum is designed to make it easy for developers to build, test, and deploy DApps.
- ThirdWeb: ThirdWeb is a set of tools and services for building decentralized applications (DApps) on the Ethereum blockchain. It includes a suite of developer tools, a decentralized application (DApp) store, and a user-friendly wallet. ThirdWeb is designed to make it easy for developers to build, test, and deploy DApps.
The above web 3 framework enables developers to reuse existing code for smart contract applications, eliminating the need to create everything from scratch. In addition, they allow developers to test and deploy apps. Integrated development environments (IDEs) such as Foundry and HardHat integrate source code editors, build automation, and debugging tools into a single, user-friendly interface.
Low-code / No-code:
These platforms enable the rapid design and deployment of user-facing apps through drag-and-drop interfaces. A good example of such platform is
- Settlemint: Settlemint is a low-code, blockchain development platform. It enables developers to quickly and easily develop and deploy user-facing blockchain applications using drag-and-drop interfaces. Settlemint also offers smart contract templates for NFTs to web3 developers so they do not have to reinvent the wheel.
Index & query:
Data indexers let users find and retrieve requested information by indexing and querying the underlying database. The most popular data indexing service on Web2 is undoubtedly Google search, which allows users to query information from online databases with response speeds in the millisecond range. To aid app developers in retrieving, analyzing, and querying blockchain data, Web3 is seeing the emergence of decentralized indexing services. EVM-compatible blockchains and decentralized data storage providers can be accessed via APIs made available by projects like
- Covalent: Covalent is a blockchain indexing company that operates a software-as-a-service (SaaS) catalog that provides data analytics and integrates APIs for popular blockchains. Covalent’s co-founders include two former Google employees and a Ph.D. in Computer Science. Covalent’s services are used by a number of popular protocols, including MakerDAO and QTUM.
- Coherent: Coherent is a decentralized data indexing and query platform that allows developers to access data stored in a variety of distributed data stores, including IPFS, Swarm, and Dat. Coherent’s unique selling proposition is its indexing technology, which allows it to provide a search engine-like experience for data stored across different data stores. Coherent is backed by a number of notable investors, including Outlier Ventures, an early investor in the Web3 Foundation; and the Electric Coin Company.
- Graph Protocol: Graph Protocol is a decentralized protocol for indexing and querying data from blockchains. Graph Protocol enables developers to build applications that require data from multiple blockchains. Graph Protocol is backed by a16z, one of the most active investors in the blockchain space.
These project all provides APIs for extracting and making use of data from decentralized data storage providers and EVM-compatible blockchains.
Test, simulate, & monitor:
It is critical to test and simulate web3 apps before to releasing them into production, and it is also crucial to keep a close eye on their performance once they are live. To test and troubleshoot smart contracts and transactions before they go live, there are a number of simulation and debugging tools available from companies like
- Tenderly: Tenderly is a Compiler-agnostic transaction debugging tool and API for all blockchains. It’s build on four pillars §-$ Security, Reliability, happiness and Community. It captures all your blockchain transactions, enables you to monitor them, and deploy transactions all within their tool. Tenderly aims to make blockchain easy, giving users and developers in-depth monitoring of transactions and their frontend. They provide the full data transparency to developers.
- Kurtosis: Kurtosis is the Next-gen developer experience for building, testing, and running distributed systems. Kurtosis is one of the statistical tests that signify the degree of peakedness of data to measure the tail risk of distribution. It is mainly used to check the outliers. This means that higher Kurtosis value signifies higher tail risk of distribution. Likewise, the lower Kurtosis value signifies lower tail risk of distribution.
Before a transaction is submitted on-chain, Blocknative provides dashboards and tools to monitor it. Through their platform, they provide tools to increase transparency and reduce errors. For sure it will be of value not just for users but also for developers. It has tools that are quite needed in the ecosystem already.
Security & audit
Given the potential for smart contract attacks, these platforms enable developers to implement industry-standard security and auditing procedures. Numerous services, frameworks, and monitoring tools for discovering and fixing security flaws are available to programmers. They are as listed below
- OpenZeppelin: OpenZeppelin is a library for writing secure Smart Contracts on Ethereum and other EVM and eWASM-based blockchains. OpenZeppelin Contracts is a battle-tested framework of smart contracts for Ethereum and other networks. Used by hundreds of projects, and audited by the world’s leading security experts. They provide secure and community-vetted smart contracts and tools for the Ethereum ecosystem
- CertiK: CertiK is a smart contract verification platform founded by professors from Yale and Columbia University, backed by Binance, and powered by formal verification. The Certik Foundation is a non-profit organization dedicated to building the next generation of blockchains and smart contract ecosystem. They aim to achieve this with formal verification, which mathematically proves that a program is bug-free and immune to hacker attacks.
- Certora: Certora is the world’s first multi-chain smart contract verification platform. Based on state-of-the-art technology, Certora provides the highest levels of security and assurance for your Ethereum, BSC, and TRON contracts. With Certora, you can be confident that your contracts will stand up to the scrutiny of the most demanding security audits.
- Forta: Forta is a Smart Contract platform that allows developers to program in any language and compile to a single bytecode that runs on all major blockchains. This bytecode can be executed on Ethereum, Bitcoin, Binance Smart Chain, and more.
All of them furnish builders with a wide array of services, frameworks, and monitoring instruments to help them lessen the impact of vulnerabilities and threats to the security of their projects.
Messaging:
A common feature of many Web 3.0 applications is the ability to communicate with their users in numerous ways. When a user’s cryptocurrency wallet receives confirmation of a transaction, the wallet may notify them. These notifications within Web3 apps are driven by user participation and powered by secure messaging protocols and decentralized communication networks, the likes of which are being developed by companies like
- XMTP Labs: XMTP Labs is an early stage R&D organization focused on open, decentralized communication protocols. They are currently developing an eXtensible Messaging and Presence Protocol (XMMP) layer for Web 3.0 applications, which provides a messaging backbone for next-generation user interfaces and systems. XMTP’s messaging protocol is designed to be extensible, meaning that it can be easily extended to support new features and use cases. In addition, XMTP is intended to be
- EPNS: Promoting the use of open standards for communication, XMTP is working on EPNS, a decentralized notification service that will allow Web 3.0 applications to send push notifications to their users in a secure and decentralized manner. EPNS is designed to be a replacement for the existing push notification infrastructure, which is centralized and controlled by a few large companies. EPNS will be powered by a network of decentralized nodes, which will provide a more reliable and secure notification service.
Analytics:
Many resources are available to programmers for examining, analyzing, extracting, and visualizing blockchain information. To facilitate the incorporation of data visualization capabilities into web3 programs, frameworks like:
- Dune: Dune Analytics is a business intelligence tool for Ethereum. Dune lets you query data from your Ethereum blockchain with SQL and visualize it in beautiful charts and dashboards. Dune is powered by BigQuery, the same tech that powers Google Analytics.
- Nansen: Nansen is an AI-powered risk assessment platform that can gauge the financial risk of cryptocurrency projects. Nansen uses data science and machine learning to automatically assess the financial risk of cryptocurrency projects.
- Messari: Messari is a data discovery and analysis platform for the crypto economy. The goal of Messari is to help crypto enthusiasts make more informed investment decisions by providing access to transparent, actionable data and analysis on hundreds of crypto assets.
Provide a selection of application programming interfaces (APIs) and reporting options. Flipside Crypto is a data insights firm that provides tools and services to help cryptocurrency projects improve their operations and grow their communities. .
App Enablement Layer
All of the aforementioned levels are tied together by the application enablement layer, which allows for various web3 applications. Unique programming approaches are needed for NFTs, DAOs, DeFi, and video games.
Tools that are geared toward NFT provide the infrastructure for making and managing NFT assets.
There are tools for creating DAOs (Syndicate and Samudai),
- What is Syndicate : Syndicate is a tool that allows users to create and manage decentralized autonomous organizations (DAOs). A DAO is an organization that is run by code, rather than by humans. Syndicate provides the infrastructure for creating and managing DAOs, including a user interface, a decentralized exchange, and a way to tokenize assets.
- What is Samudai: Samudai is a tool that allows users to create and manage decentralized autonomous organizations (DAOs). A DAO is an organization that is run by code, rather than by humans. Samudai provides the infrastructure for creating and managing DAOs, including a user interface, a decentralized exchange, and a way to tokenize assets.
To governing them we use tools like:
- Snapshot: Snapshot is a tool that allows users to take a “snapshot” of the state of a decentralized autonomous organization (DAO). A snapshot is a record of the DAO’s data, including the balances of all the DAO’s members, the proposals that have been made, and the votes that have been cast. Snapshot can be used to create a “template” for a new DAO, or to restore a DAO to its previous state.
For managing their funds we us
- Utopia Labs:Utopia Labs is a tool that allows users to manage the funds of a decentralized autonomous organization (DAO). Utopia Labs provides a user interface for DAO members to view and manage their funds, and to create and vote on proposals. Utopia Labs also includes a decentralized exchange, which allows DAO members to trade their tokens.
Tools that focus on DeFi have APIs that let developers use different DeFi primitives. Gaming-focused tools like Venly, Joyride, and Horizon Blockchain Games offer ways to make virtual worlds and games that use the blockchain.
The web3 developer stack is comprised of the discussed protocols, infrastructure, and developer tools. Because web3 is modular and compatible with other systems, the stack may be assembled in a variety of ways to create novel and engaging applications.
Even while the framework and layers we identified are likely to remain the same, new developer tooling primitives continue to emerge, and I anticipate that the entire stack will undergo significant change in the next years.