Explore 10 of the Best Solidity Development Tutorials (2024)
Written by Alchemy
Reviewed by Brady Werkheiser
Solidity is a web3 coding language for writing smart-contracts. Solidity was created for the Ethereum blockchain, and programs written in Solidity run on the Ethereum Virtual Machine (EVM). However, Solidity is not a commonly known programming language, and as a result, many developers use tutorials to learn Solidity.
Why are tutorials good for learning Solidity?
Unlike courses which are typically long, time-bound, and synchronous, tutorials are short, self-paced, and asynchronous. This flexibility to learn Solidity on your own, from any teacher, and without the pressure of deadlines, is a great way to explore Solidity.
Learning web3 is not an easy process. Rather than a disjointed array of information gathered from across the web, tutorials make it easy to master new material in a guided, step-by-step process. Soldity tutorials teach many fundamental concepts, such as how to install different integrated developer environments (IDEs), writing smart contracts, and building minimum viable products (MVPs) of popular use cases like developing an NFT marketplace.
1. Hardhat Tutorial for Beginners
Hardhat is a suite of developer tools for writing smart contracts, and is an essential tool for Solidity developers to know. This Hardhat tutorial for beginners requires some background knowledge in Javascript, using your terminal, using Github, and the basics of smart contracts, but it also provides the necessary resources to learn these dependent topics.
The tutorial covers:
Setting up your Node.js environment for Ethereum development
Creating and configuring a Hardhat project
The basics of a Solidity smart contract that implements a token
Writing automated tests for your contract using Hardhat
Debugging Solidity with console.log() using Hardhat Network
Deploying your contract to Hardhat Network and Ethereum testnet
Hardhat is a great environment to use when creating and debugging smart contracts. This Hardhat tutorial explains the basics of Solidity development with well-written instructions and code snippets.
2. Create a Polygon Smart Contract Using Alchemy
This tutorial from the Polygon team teaches students how to create a Polygon smart contract using the Alchemy developer platform. The tutorial covers the following steps:
Get started by creating a Polygon app on Alchemy
Create a Polygon wallet address with Metamask
Add MATIC balance to the wallet
Use Hardhat and Ethers.js to compile and deploy a project
Check contract status on Alchemy's platform.
This is a valuable tutorial because it will not only help you get started with deploying smart contracts on Polygon, but it will also teach you important web3 developer tools like Alchemy, Hardhat and ethers.js.
The tutorial is fairly in-depth and beginner friendly for those familiar with general coding principles.
3. Develop Your First NFT Smart Contract with OpenSea
This OpenSea tutorial explains how to create your first NFT smart contract using Solidity, Hardhat, Ethers.js, MetaMask, and Alchemy. Solidity developers need to know how to work with a variety of tools, and this tutorial offers an opportunity to use some of the best web3 tools while making an NFT.
The tutorial begins with how to install your environment and ends with tips on verification and usage for further improvement of your code. The completed tutorial code is also posted on Github as a reference when you’re done or if you get stuck along the way.
4. Create a Dynamic NFT
A dynamic NFT is a non-fungible token whose image and metadata changes based on on-chain and off-chain data. One example of a dynamic NFT is Lamelo Ball’s NFT which records Lamelo’s basketball stats after each game. Also, there are eight gold NFTs that if Lamelo won Rookie of the Year, the NFT art would become gold.
This dynamic NFT tutorial is part of Alchemy’s Road to Web3 series, and led by a team member of Chainlink’s developer relations team. The tutorial uses Alchemy and Chainlink to create a dynamic NFT who’s art changes between a bull picture and bear picture depending on whether the market is up or down.
5. Develop an NFT Marketplace
An NFT marketplace is a website where users can buy, list, and sell non-fungible tokens. This tutorial from Alchemy’s Road to Web3 uses Alchemy, Hardhat, and Pinata to deploy an NFT marketplace on the Goerli testnet.
6. Build a Decentralized Social Media Application
Like DeFi in 2020 and NFTs in 2021, blockchain social media applications have the potential to ignite a lot of mainstream interest for Ethereum. This decentralized social media tutorial teaches students how to use Apollo GraphQL, Aave’s Lens protocol API, Polygon, the MintKudos API, and Lit protocol to fetch user profiles, integrate Proof-of-Knowledge NFTs (PoK), and use encryption to deploy a social media app frontend website using Repl.it.
7. How to Get the Latest Block on Ethereum
One of the most fundamental things a blockchain developer will need to do is get the latest block from the blockchain. This tutorial covers:
Creating a project directory from the command line
Installing the Alchemy SDK
Creating an index.js file
Running a call using node to get the latest block number
8. Send a Private Transaction on Ethereum
A private transaction is a transaction sent directly to validators instead of being sent to the global mempool. Because Maximum Extractable Value (MEV) bots are listening to transactions in the mempool, sending a private transaction can help protect users from frontrunning.
This tutorial explains how to use the Alchemy SDK and Flashbots to send a private transaction.
9. Deploy a Smart Contract to Multiple Networks
Multichain applications are applications that are deployed across different blockchain networks. Because each network has unique advantages, tradeoffs, and niche users, deploying the same smart contract across multiple blockchains is a popular use case.
This tutorial explains how multichain contracts can be deployed using Alchemy, MetaMask, and Hardhat, to deploy a contract to Ethereum's Goerli testnet and Polygon's Mumbai testnet.
10. Build a Full Stack Blockchain Application
This tutorial from Dapp University shows you how to create a full stack blockchain application using Solidity smart contracts and Javascript. Students will learn how to deploy smart contracts to the blockchain and build a client-side application.
This tutorial is great for beginners because everything is taught from the beginning, is accompanied by a written guide, and includes starter code if you prefer not to start fully from scratch.
Start Learning Solidity with the Best Tutorials
Tutorials are a great way to jumpstart your Solidity developer career, whether you are completely new to coding, or new to web3 development.
If you are interested in a more structured approach to learning Solidity, Alchemy University’s 7-week Solidity developer bootcamp is a free Ethereum development crash course that covers everything you need to know.
Complete with interactive coding challenges, video lessons, and educational readings, this redesigned bootcamp will help accelerate your journey becoming a Solidity developer.
If developers are new to development in general, Alchemy University's 3-week JavaScript crash course is a great prerequisite before starting an Ethereum bootcamp.
Related overviews
What it is, How it Works, and How to Get Started
Explore the Best Free and Paid Courses for Learning Solidity Development
Your Guide to Getting Started With Solidity Arrays—Functions, Declaring, and Troubleshooting