The Development Flow
Learn the different approaches to onchain development, from client-side apps using OnchainKit to smart contract development with Hardhat and Foundry.
Client-side Development
If you’re focusing on the front end or building a user interface, Kits like OnchainKit provide an opinionated, model-agnostic setup for handling user authentication, contract interactions, and transaction status updates. With a client-side approach:
Set up an RPC endpoint
Configure an RPC endpoint to read chain data and interact with the blockchain.
Use OnchainKit
Use OnchainKit (or an equivalent framework) to handle function calls, sign messages, or sponsor gas if you’ve integrated Paymaster solutions.
Incorporate Identity Solutions
Add Identity Solutions like Basenames or Onchain Profiles for more user-friendly experiences.
Smart Contract Development
Base is an EVM-equivalent chain, so you can build or reuse your smart contracts written in Solidity. Smart wallets, Paymaster services, and other infrastructure components on Base can significantly streamline the user experience around your onchain programs.
Choose a development environment
Select a development environment such as Hardhat or Foundry.
Write and compile your contracts
Write and compile your contracts in Solidity.
Test locally
Test locally or on a testnet before pushing to mainnet.
Deploy to Base
Deploy to Base using your EOA wallet (or specialized deployment tooling).
Smart Contract Guides
Deploy on Base
Quickstart: Deploy on Base
Foundry Tutorial
Foundry Tutorial
HardHat Development
Base Learn: Development with HardHat
Foundry Development
Base Learn: Development with Foundry
Contract Verification
Verify a Smart Contract using Basescan API
Developer Environments
Base offers multiple environments to help you iterate quickly:
Production Environment Where real-value transactions occur. Use for live applications.
Production Environment Where real-value transactions occur. Use for live applications.
Base testnet on Sepolia Great for QA or staging. Test your applications without real value.
Local EVM Environment You can run a local EVM environment with Hardhat or similar tools to test your contracts before deploying.