Top 20+ tools you need as a Web3 & Blockchain developer in 2022
A thread β
A thread β
I have added each tool into a specific category to make reading easier. I have added multiple tools inside each category, so I recommend you to check and see which one is most useful to you and compare them.
1 - Smart contract Language
When it comes to building decentralized applications, Solidity and Rust are quite popular programming languages. But it is not 2, there are many others such as Vyper. You can choose any of them and build your application using that language.
When it comes to building decentralized applications, Solidity and Rust are quite popular programming languages. But it is not 2, there are many others such as Vyper. You can choose any of them and build your application using that language.
1.1 - Solidity
Solidity is an object-oriented, high-level programming language for creating smart contracts on the blockchain that automate transactions. The language was created by participants of the Ethereum project when it was proposed in 2014.
Solidity is an object-oriented, high-level programming language for creating smart contracts on the blockchain that automate transactions. The language was created by participants of the Ethereum project when it was proposed in 2014.
1.2 - Rust
Rust is an ideal smart contract language: It is type-safe, memory safe, and free of undefined behaviours. If you want to build an application on the Solana blockchain, Rust is a very good choice.
Rust is an ideal smart contract language: It is type-safe, memory safe, and free of undefined behaviours. If you want to build an application on the Solana blockchain, Rust is a very good choice.
2 - Interacting with blockchain
Once you understood how to write smart contracts, it is time to connect them with the front end of your application. There are many libraries that does that but the most popular are Ethers.js, Web3.js, and Web3. py.
Once you understood how to write smart contracts, it is time to connect them with the front end of your application. There are many libraries that does that but the most popular are Ethers.js, Web3.js, and Web3. py.
2.1 - Web3.js
The Web3.js library is the primary JavaScript library you'll use while creating Web3 applications. web3.js is a set of libraries that let you use an HTTP or IPC connection to communicate with a local or distant Ethereum node.
The Web3.js library is the primary JavaScript library you'll use while creating Web3 applications. web3.js is a set of libraries that let you use an HTTP or IPC connection to communicate with a local or distant Ethereum node.
2.2 - Ethers.js
Similar to Web3.js, Ether.js is a JavaScript library allowing developers to easily interact with the Ethereum blockchain and its ecosystem. According to the docs, It was originally designed for use with ethers. io but currently it is a general-purpose library.
Similar to Web3.js, Ether.js is a JavaScript library allowing developers to easily interact with the Ethereum blockchain and its ecosystem. According to the docs, It was originally designed for use with ethers. io but currently it is a general-purpose library.
2.3 - Web3. py
If you are a python, this library might come in handy for you. Web3. py is a Python library for interacting with Ethereum. It helps you help with sending transactions, interacting with smart contracts, reading block data, and a variety of other use cases.
If you are a python, this library might come in handy for you. Web3. py is a Python library for interacting with Ethereum. It helps you help with sending transactions, interacting with smart contracts, reading block data, and a variety of other use cases.
3 - SDKs & Protocols
Building functionalities from scratch can be a little time-consuming, therefore we can use Web3 SDKs to make the development process much faster. Some of the popular SDKs are Moralis and thirdweb.
Building functionalities from scratch can be a little time-consuming, therefore we can use Web3 SDKs to make the development process much faster. Some of the popular SDKs are Moralis and thirdweb.
3.1 - thirdweb
thirdweb lets you build web3 apps easily. It supports many blockchains such as Ethereum, Polygon, and Avalanche. With thirdweb you can build NFT projects, marketplaces, tokens, NFT drops, and much more.
thirdweb lets you build web3 apps easily. It supports many blockchains such as Ethereum, Polygon, and Avalanche. With thirdweb you can build NFT projects, marketplaces, tokens, NFT drops, and much more.
3.2 - Moralis
Moralis' SDK provides the most comprehensive, easy-to-use Web3 SDK. Think of it as Firebase on Web2, it offers everything that the user needs to create, host, and grow great dApps in one place.
Moralis' SDK provides the most comprehensive, easy-to-use Web3 SDK. Think of it as Firebase on Web2, it offers everything that the user needs to create, host, and grow great dApps in one place.
4 - Testing
Testing plays a vital role in the blockchain. Since smart contracts are non-editable, you have to test your code before deploying. Among all, I recommend learning Chai.
Testing plays a vital role in the blockchain. Since smart contracts are non-editable, you have to test your code before deploying. Among all, I recommend learning Chai.
4.1 - Chai is a BDD / TDD assertion library that can be paired with any javascript testing framework. It is often used along with Mocha. Chai provides clean syntax that almost reads like English
5. Blockchains
Blockchain is a system of recording information in a way that makes it difficult or impossible to change, hack, or cheat the system. It is a digitally distributed, decentralized, public ledger that exists across a network.
Blockchain is a system of recording information in a way that makes it difficult or impossible to change, hack, or cheat the system. It is a digitally distributed, decentralized, public ledger that exists across a network.
5.1 - Ethereum
Ethereum is a decentralized blockchain platform that establishes a peer-to-peer network that securely executes and verifies application smart contracts. This is among the most popular and most used blockchain
Ethereum is a decentralized blockchain platform that establishes a peer-to-peer network that securely executes and verifies application smart contracts. This is among the most popular and most used blockchain
5.2 - Polygon
Polygon is a βlayer twoβ scaling solution that runs alongside the Ethereum blockchain β allowing for speedy transactions and low fees
Polygon is a βlayer twoβ scaling solution that runs alongside the Ethereum blockchain β allowing for speedy transactions and low fees
5.3 - Solana
Solana is a highly functional open source project that implements a new, permissionless and high-speed layer-1 blockchain. While Solana is a proof-of-stake blockchain, the network also uses proof-of-history (PoH) as a consensus algorithm
Solana is a highly functional open source project that implements a new, permissionless and high-speed layer-1 blockchain. While Solana is a proof-of-stake blockchain, the network also uses proof-of-history (PoH) as a consensus algorithm
6 - Block Explorer
A block explorer is an online tool that enables you to search for real-time and historical information about a blockchain, including data related to blocks, transactions, addresses, and more.
A block explorer is an online tool that enables you to search for real-time and historical information about a blockchain, including data related to blocks, transactions, addresses, and more.
6.1 - Etherscan
Etherscan allows users to view the assets held on any public Ethereum wallet address. Using Etherscan, enter any Ethereum address into the search box to see the current balance and transaction history of the wallet under consideration.
Etherscan allows users to view the assets held on any public Ethereum wallet address. Using Etherscan, enter any Ethereum address into the search box to see the current balance and transaction history of the wallet under consideration.
6.2 Polygon Scan
PolygonScan allows you to explore and search the Polygon blockchain for transactions, addresses, tokens, prices and other activities taking place on Polygon
PolygonScan allows you to explore and search the Polygon blockchain for transactions, addresses, tokens, prices and other activities taking place on Polygon
7 - File Storage
While developing dApps you might need to store files and images, here are a few popular options you can use for it.
While developing dApps you might need to store files and images, here are a few popular options you can use for it.
7.1 - IPFS
IPFS is a file-sharing system that can be leveraged to more efficiently store and share large files. It relies on cryptographic hashes that can easily be stored on a blockchain.
IPFS is a file-sharing system that can be leveraged to more efficiently store and share large files. It relies on cryptographic hashes that can easily be stored on a blockchain.
7.2 - Arweave
Arweave is a Decentralized Storage Network that connects people who have extra available computer disk space with those who need more computer storage. Designed to provide scalable, cost-effective, and permanent data storage.
Arweave is a Decentralized Storage Network that connects people who have extra available computer disk space with those who need more computer storage. Designed to provide scalable, cost-effective, and permanent data storage.
8 - Security and Auditing Tools
If a security flaw exists on the blockchain network where a smart contract operates, hackers may be able to steal money from users' wallets. Security plays a vital role in smart contract development.
If a security flaw exists on the blockchain network where a smart contract operates, hackers may be able to steal money from users' wallets. Security plays a vital role in smart contract development.
8.1 Securify
Securify 2.0 is a security scanner for Ethereum smart contracts supported by the Ethereum Foundation and ChainSecurity. The core research behind Securify was conducted at the Secure, Reliable, and Intelligent Systems Lab at ETH Zurich.
Securify 2.0 is a security scanner for Ethereum smart contracts supported by the Ethereum Foundation and ChainSecurity. The core research behind Securify was conducted at the Secure, Reliable, and Intelligent Systems Lab at ETH Zurich.
8.2 Mythx
MythXβ’ by ConsenSys Software Incβ’ is the premier security analysis service for Ethereum smart contracts
MythXβ’ by ConsenSys Software Incβ’ is the premier security analysis service for Ethereum smart contracts
9. Development environment
When it comes to writing smart contracts, you can either use Remix IDE or your own local development environment.
When it comes to writing smart contracts, you can either use Remix IDE or your own local development environment.
9.1 - Remix IDE
If you are new and want to learn, Remix is a great choice. It allows you to develop and deploy smart contracts just from your browser. You don't need to install or set up any other software. It also has dark mode π and a rich set of plugins with intuitive GUIs.
If you are new and want to learn, Remix is a great choice. It allows you to develop and deploy smart contracts just from your browser. You don't need to install or set up any other software. It also has dark mode π and a rich set of plugins with intuitive GUIs.
9.2 - Local Development environment
However sometimes when you are building a complex project, Remix wouldn't be enough and you might need a local development environment. There are many tools that can help you with this but some of the popular tools are Hardhat, Truffle, etc...
However sometimes when you are building a complex project, Remix wouldn't be enough and you might need a local development environment. There are many tools that can help you with this but some of the popular tools are Hardhat, Truffle, etc...
9.2.1 - Hardhat
The most popular choice for many developers including me is Hardhat. Hardhat is a development environment to compile, deploy, test, and debug your Ethereum software.
The most popular choice for many developers including me is Hardhat. Hardhat is a development environment to compile, deploy, test, and debug your Ethereum software.
9.2.2 - Truffle
Another popular choice is Truffle. According to their docs, it is a world-class development environment, testing framework, and asset pipeline for blockchains using the Ethereum Virtual Machine (EVM), aiming to make life as a developer easier.
Another popular choice is Truffle. According to their docs, it is a world-class development environment, testing framework, and asset pipeline for blockchains using the Ethereum Virtual Machine (EVM), aiming to make life as a developer easier.
9.2.3 - Brownie
If you are a python developer, then this tool is for you. Brownie is a Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine. It is a very robust and easy-to-use framework for developing Ethereum smart contracts
If you are a python developer, then this tool is for you. Brownie is a Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine. It is a very robust and easy-to-use framework for developing Ethereum smart contracts
9.2.4 Foundry
Last but not least, we have a foundry. Foundry is a blazing fast, portable and modular toolkit for Ethereum application development. It is written in Rust. It has many features including a fast compilation pipeline, and fast remote RPC, and it is portable.
Last but not least, we have a foundry. Foundry is a blazing fast, portable and modular toolkit for Ethereum application development. It is written in Rust. It has many features including a fast compilation pipeline, and fast remote RPC, and it is portable.
Loading suggestions...