Smart contracts are computer programs or transaction protocols designed to automatically execute, control, or document binding actions or events. Smart contracts can be written in a variety of languages including Solidity, Vyper, Fe, Yu, and Yu+, however Solidity and Vyper are the most popular smart contract languages to program in due to their high human reliability. While eliminating the middlemen of transactions, Solidity-based smart contracts depend on a deterministic functionality, programmed into the contract.
Introduction to Smart Contracts
About Smart Contracts
The Foundation of Blockchain Transactions
Solidity: the Most Popular Smart Contract Language
Endless resources online to get started
Extensive community support
Mature developer toolset including such as Scaffold-Eth, Waffle, & HardHat
Solidity Resources to Get Started
Start Learning Solidity Today With Some of Our Favorite Resources
Start Learning Solidity
Introduction to Solidity
Discover the basics of Solidity in this descriptive article.
Solidity Documentation Site
Dive into the Solidity documentation site to further understand the capabilities of Solidity.
Ethereum Development Tutorials
Explore a curated list of tutorials from Ethereum community members all around the world.
Learn the fundamentals of Solidity while creating a zombie army in this interactive educational game.
Explore the core concepts of Web3 and Solidity in this EVM-based wargame. Each level is a smart contract that needs to be “hacked.”
Capture the Ether
After you’ve covered the basics, try your hand at finding vulnerabilities and common exploits in smart contracts.
Solidity Developer Forum
Interact with other Solidity developers in this forum, used to ask and answer questions about Solidity development.
Crypto Devs Discord
Crypto devs is an extensive developer discord group with language-specific channels like Solidity.
Smart Contracts Power Prominent DeFi Projects
Smart contracts are fantastic at storing data, verifying rules, and executing actions autonomously, creating more streamlined processes. Today, smart contracts are used to create more functional systems within Web3 and beyond.
Automated Market Makers/Decentralized Exchanges
Decentralized exchanges rely on smart contracts to execute trades without an intermediary.
Lending & Borrowing Protocols
Overcollateralized lending contracts enable trustless borrowing of assets while offering lenders a place to yield.
Play-to-Earn games require smart contracts to validate peer-to-peer transactions and create transparency between developers and gamers.
Smart contracts enable full control of funds and unlimited functionality.
ERC-721 & ERC-1155 contracts allow end-users to view, purchase or sell NFTs.
Through smart contracts, trustless bridges enable users to remain in control of their funds.
Oracles query data from your smart contracts to create data feeds and real-time information.
Simplify the Development Experience
Smart contracts can be constructed in a variety of ways, however using frameworks and pre-made stacks can simplify the development experience. In the past, creating a smart contract required a collection of technology from different sources. Today’s most popular frameworks like Scaffold-Eth, HardHat, and Waffle include pre-built technologies or plugins to develop in one native environment.
A collection of commonly used Ethereum development tools to quickly deploy a Solidity smart contract, and launch a DApp with a React frontend and a deployed subgraph
OpenZeppelin helps developers minimize risk, as their open-source code templates are battle-tested for Ethereum and other blockchains.
Waffle & Mars
Waffle is a library for compiling and testing smart contracts, and Mars is a deployment manager.
Hardhat is an Ethereum development environment that helps developers manage and automate the recurring tasks inherent to building smart contracts and DApps.