Table of contents
Introduction
The hot time to learn and ace in Web 3.0 is now. The community is still developing. There are sufficient resources and help in the community to start learning the web3.
Developers who are unsure about the future of web3. I strongly believe in web3 due to the following reasons:
- Community is building in recent times for learning and developing
- There are startup ideas revolving around web3
- This is the next big thing in web dev
- Companies are building tools that help the development process
- There are grants available for web3 projects
I do believe in Web3. So remove any doubts from your mind regarding web3 and let's get started.
Prerequisite
Before stepping into web3, you need to know the basics of web development. You should know the followings:
- Frontend(HTML, CSS, JAVASCRIPT)
- Basic Javascript Framework like React, Vuejs, etc. One is enough.
- Little of Backend(If you don't know, you can learn in the web3 journey)
I things, that this will set you to start learning web 3.
Blockchain
Blockchain technology forms the base for the web3 application. You need to understand its concept, implementation, and working to start your web3 journey.
Resources to learn
- 📄What is blockchain technology?
- ▶️Blockchain Theory 101
- ▶️Blockchain Full Course - 4 Hours | Blockchain Tutorial | Blockchain Technology Explained | Edureka
Ethereum Network
Bitcoin is used for currency while the Ethereum network can deal with much variety of transactions. Learn a little bit about Ethereum technology.
Resources to learn
- 📄Official Website
- ▶️What Is Ethereum And How Does It Work?
- ▶️Ethereum Tutorial For Beginners | What Is Ethereum? | Ethereum 2020 Explained | Simplilearn
dApp (Decentralized Application)
Decentralized applications are those applications that run on a peer-to-peer(P2P) blockchain network. These are the web3 application that we build using different stacks.
Resources to learn
- 📄What is a Dapp? A Guide to Ethereum Dapps
- ▶️What is a dApp? Decentralized Application on the Blockchain
Smart Contracts
Smart contracts are computer programs that are non-modifiable once deployed, automatically executed when the criteria defined in it meet.
Resources to learn
- 📄What is a smart contract and how does it work?
- 📄Blockchain 2.0 – Explaining Smart Contracts And Its Types
Solidity
You can write smart contracts in different programming languages such as solidity, rust, yul, and others. Solidity is the most popular and efficient when comes to smart contracts.
Resources to learn
- 📄Official Documentaiton
- 📄What Is Solidity and How Is It Used to Develop Smart Contracts?
- ▶️Solidity Tutorial - A Full Course on Ethereum, Blockchain Development, Smart Contracts, and the EVM
- 📄Cypto Zombie
Interaction between frontend and blockchain
Frontend and blockchain need to interact with each other for the exchange of information. Here comes libraries that will help in the interaction between them.
There are two major libraies:
Ether.js
Web3.js
Local blockchain development environment
It is not ideal to deploy smart contracts directly to the main network. Also, the test network is not fast enough. For development purposes, a local blockchain environment is useful to test Ethereum based contracts.
There are tools to create a local Ethereum based blockchain network. Few are as follows:
Ganache
It has a UI-based and also terminal-based local blockchain network. It comes under a truffle suite.
Resources to learn ganache
Remix IDE for Smart Contract deployment
Remix IDE helps you to write solidity-based smart contracts. It helps to deploy smart contracts in the local environment as well as test networks.
Resources to learn
Framework for dApp development
thirdweb
Thirdweb makes you develop NFT, NFT marketplace, coin, decentralized voting system, etc without writing a single line of code for smart contracts. There are modules that you can use in your web3 project.
Resource to learn
- 📄Official Documentation
- ▶️🔴 Build Modern Cryptopunk Clone with React.js & Web 3.0 You learn about thirdweb in the beginning. Rest of the tutorial is for web development
Hardhat
Ethereum development environment for professionals.
Resource to learn
Truffle
The Truffle Suite gets developers from idea to dapp as comfortably as possible.
Resource to learn
- 📄Official Documentation
- ▶️Truffle Tutorial for Beginners | Compile, Test & Deploy Smart contracts to any EVM Blockchain
GitHub Repository
I have created a GitHub repository containing all the resources mentioned above.
I need help from you to improve the repository. In detail, I need your help in the following sections:
- Adding more resources
- Adding more topics related to web3
- Suggestions to improve the repo
I hope you will help me to improve the repository.
Conclusion
I hope, this article has helped you in finding a path to learn the web3 technologies.
Thanks for reading the blog post.