Remix IDE Cheatsheet

Plugins

Use this Remix IDE reference while you build software engineering projects, review code for technical interview prep, or polish examples for a software engineer resume.

Plugin Manager

Open with the puzzle piece icon at the bottom of the left icon bar.

  • Search by name.
  • Click Activate to enable; Deactivate to remove the icon.
  • Active plugins save to the workspace; re-opening Remix re-activates them.

Core Built-in Plugins

These are always available (no activation needed):

PluginIconPurpose
File ExplorerFolderManage files and workspaces
SearchMagnifierFull-text search across workspace files
Solidity CompilerSCompile .sol files
Deploy & RunRocketDeploy contracts, call functions
DebuggerBugStep-through transaction debugger
Plugin ManagerPuzzleEnable/disable all other plugins
GitSource-control branchBuilt-in Git: clone, commit, branch, push/pull

Essential Optional Plugins

Solidity Unit Testing

Run _test.sol files with on-chain assertions. - Activate: Plugin Manager → "Solidity Unit Testing" - See the Testing section of this cheatsheet for full usage.

Solidity Static Analyzer

Automatic security scan on every compile. - Findings: reentrancy, tx.origin auth, block.timestamp misuse, unchecked calls. - Results appear as warnings in the compiler panel.

Git (built-in)

Modern Remix ships Git natively — the source-control icon in the left bar (DGIT is the legacy plugin this replaced). - Init, clone, branch, commit, push, pull from the panel. - Log in with GitHub from the Git panel (or set a token under Settings → GitHub credentials) to push and open PRs.

Etherscan / Sourcify Verification

Verify and publish source code after deployment.

Etherscan: 1. Activate "Etherscan - Contract Verification". 2. Enter your Etherscan API key. 3. After deploy, click Verify — Remix submits source + compiler settings.

Sourcify (decentralized): 1. Activate "Sourcify". 2. Click Verify — submits to sourcify.dev without an API key.

Contract Flattener

Merges all imported files into a single .sol — useful for manual Etherscan verification. - Activate, then right-click any file → Flatten.

Hardhat Provider / Foundry Provider

Connect to a local hardhat node or anvil instance. - Activate the matching plugin, then select it in the Deploy & Run environment dropdown.

Tenderly

Debug mainnet/testnet transactions by hash, fork mainnet for simulation. - Requires a free Tenderly account.

OpenZeppelin Contracts Wizard

GUI to generate ERC-20, ERC-721, ERC-1155, Governor, and custom contracts with OpenZeppelin base classes.

  1. Activate "OpenZeppelin Contracts Wizard".
  2. Configure token name, symbol, features (mintable, burnable, pausable, snapshots, votes…).
  3. Click Open in Remix — the generated file appears in contracts/.

Solhint Linter

Lints Solidity on every compile with style + security rules; findings appear alongside compiler warnings.

Legacy note: the MythX plugin still shows up in older tutorials — the MythX service was discontinued and the plugin no longer works. For deep analysis, run Slither locally against a Remixd-shared folder.

Gas Profiler

Shows per-function gas costs from a test run — helps identify expensive operations.

Vyper Compiler

Compile .vy Vyper contracts. - Select Vyper in the language dropdown after activation.

Installing External / Custom Plugins

Remix supports loading plugins from an external URL (for plugin developers):

1. Plugin Manager → Connect to a Local Plugin. 2. Enter: - Plugin Name (any label) - URL (e.g., http://localhost:3000 for a locally running plugin) - Type: iframe or window - Profile: dapp or local 3. Click OK — the plugin loads in a sandboxed iframe.

Plugin API (for Plugin Developers)

Plugins communicate via the remix object and the @remixproject/plugin SDK:

import { createClient } from "@remixproject/plugin-webview";

const client = createClient();
await client.onload();

// Read a file
const content = await client.call("fileManager", "getFile", "contracts/Hello.sol");

// Listen to compiler output
client.on("solidity", "compilationFinished", (fileName, source, languageVersion, data) => {
  console.log("ABI:", data.contracts[fileName].Hello.abi);
});

// Write a file
await client.call("fileManager", "writeFile", "contracts/Generated.sol", "// generated");

Plugin Keyboard Reference

ShortcutAction
Ctrl+Shift+FOpen File Explorer
Ctrl+Shift+AOpen Plugin Manager
Ctrl+SCompile the current file
Ctrl+Shift+SCompile the file and run the open script
Ctrl+Alt+FFormat the current file

Panels without a shortcut (Compiler, Deploy & Run, Debugger, …) are opened from the icon bar — Remix deliberately keeps the app-level shortcut list short so Monaco editor bindings stay free.