Integrated Development Environments (IDEs)
Last edit: @UNOFFICIALbgd(opens in a new tab), October 7, 2024
When it comes to setting up an integrated development environment (IDE)(opens in a new tab), programming applications on Ethereum is similar to programming any other software project. There are many options to choose from, so at the end of the day, pick the IDE or code editor that best suits your preferences. Most likely the best IDE choice for your Ethereum development is the IDE you already use for traditional software development.
Web-based IDEs
If you're looking to fiddle with code before you set up a local development environment, these web apps are custom-built for Ethereum smart contract development.
Remix(opens in a new tab) - Web-based IDE with built in static analysis, and a test blockchain virtual machine
ChainIDE(opens in a new tab) - A cloud-based multi-chain IDE
Replit (Solidity Starter - Beta)(opens in a new tab) - A customizable development environment for Ethereum with hot reloading, error checking, and first-class testnet support
Tenderly Sandbox(opens in a new tab) - A fast prototyping environment where you can write, execute, and debug smart contracts in the browser using Solidity and JavaScript
EthFiddle(opens in a new tab) - Web-based IDE that lets you write, compile, and debug your smart contract
Desktop IDEs
Most established IDEs have built plugins to enhance the Ethereum development experience. At a minimum, they provide syntax highlighting for smart contract languages.
Visual Studio Code - Professional cross-platform IDE with official Ethereum support
JetBrains IDEs (IntelliJ IDEA, etc.) - Essential tools for software developers and teams
Remix Desktop - Experience Remix IDE on your local machine
Plugins and extensions
- solidity(opens in a new tab) - Ethereum Solidity Language for Visual Studio Code
- Solidity + Hardhat for VS Code(opens in a new tab) - Solidity and Hardhat support by the Hardhat team
- Prettier Solidity(opens in a new tab) - Code formatter using prettier
Further reading
- Ethereum IDEs(opens in a new tab) - Alchemy's list of Ethereum IDEs
Know of a community resource that helped you? Edit this page and add it!