Getting Started with Solidity

If you are getting started with Solidity development we recommend you begin by reading the tutorials outline below. They will help you understand important core concepts in Ethereum smart contract development.

Solidity Integrated Development Environments (IDE) and tools

To begin set up your development environment and select an IDE. Our recommendation is to use Remix. Then become familiar with the other development tools using the link below. These tools will help you navigate the environment and trouble shoot issues. Make sure you know how to connect your IDE to the test environments (links below).

Introduction to Solidity with Examples

learning Ethereum solidity start here
  1. Data types
  2. Constructors
  3. Variables
  4. Functions
  5. Visibility
  6. Pure and View
  7. Function modifiers
  8. Gas
  9. Events
  10. Error handling
  11. Fallback function
  12. For Loop
  13. Array
  14. Mapping
  15. Enum
  16. Struct
  17. Payable modifier
  18. Import into a contract
  19. Contract cleanup
  20. Memory vs storage
  21. Inheritance
  22. If statements
  23. Libraries
  24. Interface
  25. New keyword
  26. Dynamic array
  27. Try catch
  28. Modules
  29. Account abstraction
  30. mstore and mload
  31. Memory Impacts the Cost of Ethereum Gas

Sample Solidity smart contracts

After reading about each of the Solidity core concepts above read the sample contracts below. Rewrite the contracts in Remix or your favorite IDE and deploy them to the test network. Practicing syntax and concepts using real examples is the best way to learn.

learning Ethereum solidity start here
  1. Sample contract
  2. Address book
  3. Hotel contract or vending machine
  4. Time lock
  5. Simple ERC20 token contract
  6. Shared wallet
  7. Trustless token swap
  8. Eth game deposit and win
  9. Delegate call to upgrade a contract
  10. Covered call option
  11. Uniswap clone
  12. Multi signature wallet
  13. Chain link oracle
  14. Chain link price feeds on Binance Smart Chain
  15. Yield farm
  16. How to create an ERC721 Solidity smart contract
  17. How to swap tokens on Uniswap using a smart contract
  18. Create a Defi Bank that pays interest (Yield Farm)
  19. How to sign & verify an Ethereum message off chain (Part 1)
  20. How to create a payment channel on Ethereum (Part 2)
  21. Lock a token so it can not be transferred
  22. Auto send a percent of tokens to another address
  23. Roulette Game
  24. Flash loan arbitrage on Uniswap and SushiSwap
  25. Use a signature to generate a public key
  26. How to fork the SafeMoon token smart contract
  27. Multiple ways to upgrade a Solidity smart contract
  28. Compound Finance liquidation smart contract
  29. Implement Upkeep using Chainlink Keepers
  30. How to create and deploy an NFT collection
  31. Create a crypto faucet using a Solidity smart contract
  32. ERC721 contract that supports sales royalties
  33. Dynamic NFTs on Ethereum
  34. What is an ERC-1404 token contract
  35. Vaults and the ERC-4626 token contract
  36. Subscription payments
  37. How to create a DAO
  38. Implement an escrow service
  39. Create an ERC-5573 multi asset token contract
  40. ERC-1155 contracts that support multiple tokens
  41. Understanding Ethereum Contract Type 4337

Resources

Blockchain Networks

Getting started with Solidity? Below is a list of EVM compatible Mainnet and Testnet blockchain networks. Each link contains network configuration, links to multiple faucets for test ETH and tokens, bridge details, and technical resources for each blockchain. Basically everything you need to test and deploy Solidity smart contracts or decentralized applications on each chain. For a list of popular Ethereum forums and chat applications click here.

Ethereum test network configuration and test ETH faucet information
Optimistic Ethereum Mainnet and Testnet configuration, bridge details, etc.
Polygon network Mainnet and Testnet configuration, faucets for test MATIC tokens, bridge details, etc.
Binance Smart Chain Mainnet and Testnet configuration, faucets for test BNB tokens, bridge details, etc.
Fanton networt Mainnet and Testnet configuration, faucets for test FTM tokens, bridge details, etc.
Kucoin Chain Mainnet and Testnet configuration, faucets for test KCS tokens, bridge details, etc.

Web3 Software Libraries

You can use the following libraries to interact with an EVM compatible blockchain.

Nodes

Learn how to run a Geth node. Read getting started with Geth to run an Ethereum node

Fix a transaction

How to fix a pending transaction stuck on Ethereum or EVM compatible chain

Additional development resources and projects

Search here for additional development projects and information

Getting Started with Solidity should be easy

The information above is for educational and entertainment purposes only