---
title: Integrated Development Environments (IDEs)
description: Learn about web-based and desktop IDEs for Ethereum development, including Remix, VS Code, and popular plugins.
lang: en
---

When it comes to setting up an [integrated development environment (IDE)](https://wikipedia.org/wiki/Integrated_development_environment), 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 {#web-based-ides}

If you're looking to fiddle with code before you [set up a local development environment](/developers/local-environment/), these web apps are custom-built for Ethereum smart contract development.

**[Remix](https://remix.ethereum.org/)** - **_Web-based IDE with built in static analysis, and a test blockchain virtual machine_**

- [Docs](https://remix-ide.readthedocs.io/en/latest/#)
- [Gitter](https://gitter.im/ethereum/remix)

**[ChainIDE](https://chainide.com/)** - **_A cloud-based multi-chain IDE_**

- [Docs](https://chainide.gitbook.io/chainide-english-1/)
- [Help forum](https://forum.chainide.com/)

**[Replit (Solidity Starter - Beta)](https://replit.com/@replit/Solidity-starter-beta)** - **_A customizable development environment for Ethereum with hot reloading, error checking, and first-class testnet support_**

- [Docs](https://docs.replit.com/)

**[Tenderly Sandbox](https://sandbox.tenderly.co/)** - **_A fast prototyping environment where you can write, execute, and debug smart contracts in the browser using Solidity and JavaScript_**

**[EthFiddle](https://ethfiddle.com/)** - **_Web-based IDE that lets you write, compile, and debug your smart contract_**

- [Gitter](https://gitter.im/loomnetwork/ethfiddle)

## Desktop IDEs {#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](/developers/docs/smart-contracts/languages/).

**Visual Studio Code -** **_Professional cross-platform IDE with official Ethereum support_**

- [Visual Studio Code](https://code.visualstudio.com/)
- [Code samples](https://github.com/Azure-Samples/blockchain/blob/master/blockchain-workbench/application-and-smart-contract-samples/readme.md)
- [GitHub](https://github.com/microsoft/vscode)

**JetBrains IDEs (IntelliJ IDEA, etc.) -** **_Essential tools for software developers and teams_**

- [JetBrains](https://www.jetbrains.com/)
- [GitHub](https://github.com/JetBrains)
- [IntelliJ Solidity](https://github.com/intellij-solidity/intellij-solidity/)

**Remix Desktop -** **_Experience Remix IDE on your local machine_**

- [Download](https://github.com/ethereum/remix-desktop/releases)
- [GitHub](https://github.com/ethereum/remix-desktop)

## Plugins and extensions {#plugins-extensions}

- [solidity](https://marketplace.visualstudio.com/items?itemName=JuanBlanco.solidity) - Ethereum Solidity Language for Visual Studio Code
- [Solidity + Hardhat for VS Code](https://marketplace.visualstudio.com/items?itemName=NomicFoundation.hardhat-solidity) - Solidity and Hardhat support by the Hardhat team
- [Prettier Solidity](https://github.com/prettier-solidity/prettier-plugin-solidity) - Code formatter using prettier

## Further reading {#further-reading}

- [Ethereum IDEs](https://www.alchemy.com/dapps/list-of/solidity-developer-tools-on-ethereum) _- Alchemy's list of Ethereum IDEs_

_Know of a community resource that helped you? Edit this page and add it!_
