__Deploy a Contract__
---
- Dive into advanced smart contract concepts.
+ Learn how to deploy smart contracts using Remix IDE.
- [:octicons-arrow-right-24: Get Started](/smart-contracts/)
+ [:octicons-arrow-right-24: Get Started](/smart-contracts/dev-environments/remix/deploy-a-contract/)
-
__OpenZeppelin Contracts__
---
- Test your skills by deploying a simple contracts with prebuilt templates.
+ Test your skills by deploying simple contracts using prebuilt templates.
[:octicons-arrow-right-24: Get Started](https://www.openzeppelin.com/solidity-contracts){target=\_blank}
diff --git a/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md b/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md
new file mode 100644
index 000000000..64e771cf9
--- /dev/null
+++ b/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md
@@ -0,0 +1,156 @@
+---
+title: Troubleshooting Remix IDE
+description: Common issues related to developing, compiling, and deploying smart contracts using Remix IDE on Polkadot Hub paired with troubleshooting suggestions.
+categories: Smart Contracts, Tooling
+url: https://docs.polkadot.com/smart-contracts/dev-environments/remix/troubleshooting-faq/
+---
+
+# Remix IDE Troubleshooting
+
+This guide provides solutions to common issues you may encounter when using Remix IDE with Polkadot Hub. If you're experiencing problems with compilation, deployment, or contract interaction, you'll likely find the solution here.
+
+## Contract fails to compile or shows errors in the terminal
+
+- **Check Solidity version compatibility**:
+ - Ensure your contract's pragma statement matches the compiler version selected in the **Solidity Compiler** tab.
+ - Example: If your contract uses `pragma solidity ^0.8.0;`, select compiler version 0.8.x or higher.
+
+- **Review syntax errors**:
+ - Carefully read error messages in the terminal panel at the bottom of the screen.
+ - Common issues include missing semicolons, incorrect function visibility, or mismatched brackets.
+
+- **Clear cache and recompile**:
+ - Delete the `artifacts` folder in the **File Explorer**.
+ - Try compiling again with `Ctrl+S` or click the **Compile** button.
+
+## The `artifacts` folder doesn't appear after compilation
+
+- Ensure compilation completed successfully without errors.
+- Refresh the **File Explorer** by clicking away and back to the **File Explorer** tab.
+- Check that your `.sol` file is saved before compiling.
+
+## Remix doesn't detect your wallet extension (MetaMask, Talisman, etc.)
+
+- **Verify wallet installation**:
+ - Ensure your wallet extension is properly installed and enabled in your browser.
+ - Check that the extension icon appears in your browser toolbar.
+
+- **Refresh the page**:
+ - Reload the Remix IDE page and try reconnecting.
+
+- **Check browser permissions**:
+ - Ensure Remix has permission to interact with the wallet extension.
+ - Check your browser's extension settings.
+
+- **Use correct environment**:
+ - In the **Deploy & Run Transactions** tab, select **Browser Extension** from the **Environment** dropdown.
+ - Choose **Injected Provider - MetaMask** (works with most wallet providers).
+
+## Wallet is connected but to the wrong network
+
+1. Open your wallet extension.
+2. Switch to the Polkadot Hub network.
+3. Refresh the Remix IDE if the network change isn't detected automatically.
+4. Verify the network name and chain ID match Polkadot Hub's configuration.
+
+## Deployment fails with "insufficient funds" or similar error
+
+- **Check your balance**:
+ - Verify you have enough test tokens in your connected wallet.
+ - Visit the [Polkadot faucet](/smart-contracts/faucet/){target=\_blank} to obtain test tokens.
+
+- **Wait for faucet tokens**:
+ - Allow a few minutes for faucet transactions to complete.
+ - Refresh your wallet to see the updated balance.
+
+## Deployment transaction is rejected or fails
+
+- **Increase gas limit**:
+ - In the **Deploy & Run Transactions** tab, adjust the **Gas Limit** field.
+ - Try increasing it by 20-30% from the estimated amount.
+
+- **Check contract constructor parameters**:
+ - Ensure any required constructor parameters are provided correctly.
+ - Verify parameter types match the contract's constructor signature.
+
+- **Verify contract selection**:
+ - Ensure you've selected the correct contract from the **Contract** dropdown.
+ - If you have multiple contracts, make sure you're deploying the intended one.
+
+## The "Injected Provider - MetaMask" option doesn't appear in the Environment dropdown
+
+- Select **Browser Extension** from the **Environment** dropdown to populate the **Injected Provider - Metamask** option.
+- Ensure your wallet extension is unlocked and active.
+- Try disabling and re-enabling the wallet extension.
+- Refresh the Remix IDE page.
+
+## Wallet rejects transactions when trying to interact with deployed contracts
+
+- **Check wallet unlock status**:
+ - Ensure your wallet is unlocked.
+ - Verify you're approving the transaction in the wallet pop-up.
+
+- **Verify sufficient gas**:
+ - Ensure you have enough tokens to cover the transaction fee.
+ - The wallet pop-up should show the estimated gas cost.
+
+- **Network mismatch**:
+ - Confirm your wallet is still connected to Polkadot Hub.
+ - Check that Remix is using the same network.
+
+## Deployed contract doesn't show in the **Deployed/Unpinned Contracts** section
+
+- Wait for the transaction to be confirmed on-chain.
+- Check the Remix terminal for deployment confirmation.
+- Scroll down in the **Deploy & Run Transactions** panel to find the deployed contracts section.
+- If the deployment transaction failed, check the terminal for error messages.
+
+## Blue buttons (read functions) don't display return values
+
+- **Check the terminal**:
+ - Return values appear in the terminal panel at the bottom.
+ - Look for the decoded output section.
+
+- **Verify contract state**:
+ - Ensure the contract has been properly initialized.
+ - Check if the function requires a specific contract state to return values.
+
+- **Network connection**:
+ - Verify you're still connected to the correct network.
+ - Try refreshing the connection to your wallet.
+
+
+## Orange/red buttons (write functions) execute, but the state doesn't change
+
+- **Wait for transaction confirmation**:
+ - Transactions need to be mined before state changes are reflected.
+ - Check the terminal for transaction status.
+ - Wait a few seconds and try rereading the state.
+
+- **Transaction failed**:
+ - Check if the transaction was actually successful in the terminal.
+ - Look for revert reasons or error messages.
+ - Verify you approved the transaction in your wallet.
+
+- **Check transaction parameters**:
+ - Ensure you're passing the correct parameters to the function.
+ - For payable functions (red buttons), verify you're sending the correct amount.
+
+## Remix takes a long time to load or becomes unresponsive
+
+- **Clear browser cache**:
+ - Clear your browser's cache and cookies.
+ - Restart your browser.
+
+- **Disable unnecessary plugins**:
+ - In Remix, deactivate plugins you're not using via the Plugin Manager.
+
+- **Use a supported browser**:
+ - Use Chrome, Firefox, or Brave for the best compatibility.
+ - Ensure your browser is up to date.
+
+## Changes to files or folders don't appear in the File Explorer
+
+- Click the refresh icon in the **File Explorer**.
+- Switch to a different tab and back to **File Explorer**.
+- Save your work and reload the Remix IDE page.
diff --git a/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting.md b/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting.md
deleted file mode 100644
index afc5441ff..000000000
--- a/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-url: https://docs.polkadot.com/smart-contracts/dev-environments/remix/troubleshooting/
----
-
-TODO
diff --git a/.ai/pages/smart-contracts-dev-environments-remix-verify-a-contract.md b/.ai/pages/smart-contracts-dev-environments-remix-verify-a-contract.md
deleted file mode 100644
index 9171898a2..000000000
--- a/.ai/pages/smart-contracts-dev-environments-remix-verify-a-contract.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-url: https://docs.polkadot.com/smart-contracts/dev-environments/remix/verify-a-contract/
----
-
-TODO
diff --git a/.ai/site-index.json b/.ai/site-index.json
index 6fe83e689..6100c0b46 100644
--- a/.ai/site-index.json
+++ b/.ai/site-index.json
@@ -7489,27 +7489,54 @@
},
{
"id": "smart-contracts-dev-environments-remix-deploy-a-contract",
- "title": "smart-contracts-dev-environments-remix-deploy-a-contract",
+ "title": "Deploy Contracts Using Remix IDE",
"slug": "smart-contracts-dev-environments-remix-deploy-a-contract",
"categories": [
- "Uncategorized"
+ "Smart Contracts",
+ "Tooling"
],
"raw_md_url": "https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-deploy-a-contract.md",
"html_url": "https://docs.polkadot.com/smart-contracts/dev-environments/remix/deploy-a-contract/",
- "preview": "TODO",
- "outline": [],
+ "preview": "After compiling your smart contract in Remix IDE, the next step is to deploy it to the Polkadot Hub network. This guide will walk you through the deployment process using a wallet provider and show you how to interact with your deployed contracts directly from the Remix interface.",
+ "outline": [
+ {
+ "depth": 2,
+ "title": "Overview",
+ "anchor": "overview"
+ },
+ {
+ "depth": 2,
+ "title": "Prerequisites",
+ "anchor": "prerequisites"
+ },
+ {
+ "depth": 2,
+ "title": "Deploy Contracts",
+ "anchor": "deploy-contracts"
+ },
+ {
+ "depth": 2,
+ "title": "Interact with Contracts",
+ "anchor": "interact-with-contracts"
+ },
+ {
+ "depth": 2,
+ "title": "Where to Go Next",
+ "anchor": "where-to-go-next"
+ }
+ ],
"stats": {
- "chars": 5,
- "words": 1,
- "headings": 0,
- "estimated_token_count_total": 0
+ "chars": 3828,
+ "words": 565,
+ "headings": 5,
+ "estimated_token_count_total": 887
},
- "hash": "sha256:56ba36249ea8216ad513b13df3de6c0e490ba214897674d30331f1c7e7edbef3",
+ "hash": "sha256:00209001a769a1bce5d78b123dcb0d4243e8fd80a77d3b7fd55cf35635bd980b",
"token_estimator": "heuristic-v1"
},
{
"id": "smart-contracts-dev-environments-remix-get-started",
- "title": "Use the Polkadot Remix IDE",
+ "title": "Use the Remix IDE on Polkadot Hub",
"slug": "smart-contracts-dev-environments-remix-get-started",
"categories": [
"Smart Contracts",
@@ -7517,12 +7544,12 @@
],
"raw_md_url": "https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-get-started.md",
"html_url": "https://docs.polkadot.com/smart-contracts/dev-environments/remix/get-started/",
- "preview": "!!! smartcontract \"PolkaVM Preview Release\" PolkaVM smart contracts with Ethereum compatibility are in **early-stage development and may be unstable or incomplete**.
- :octicons-code-16:{ .lg .middle } __Deploy NFTs Using Remix IDE__",
+ "preview": "Remix IDE is a robust browser-based development environment for smart contracts. This guide will walk you through the essentials of the [Remix IDE](https://remix.ethereum.org/){target=\\_blank} to understand the processes of compiling, developing, and deploying smart contracts on Polkadot Hub.",
"outline": [
{
"depth": 2,
- "title": "Overview",
- "anchor": "overview"
+ "title": "Introduction",
+ "anchor": "introduction"
},
{
"depth": 2,
@@ -7531,28 +7558,18 @@
},
{
"depth": 2,
- "title": "Accessing Remix IDE",
- "anchor": "accessing-remix-ide"
- },
- {
- "depth": 2,
- "title": "Creating a New Contract",
- "anchor": "creating-a-new-contract"
- },
- {
- "depth": 2,
- "title": "Compiling Your Contract",
- "anchor": "compiling-your-contract"
+ "title": "Access Remix IDE",
+ "anchor": "access-remix-ide"
},
{
"depth": 2,
- "title": "Deploying Contracts",
- "anchor": "deploying-contracts"
+ "title": "Create a New Contract",
+ "anchor": "create-a-new-contract"
},
{
"depth": 2,
- "title": "Interacting with Contracts",
- "anchor": "interacting-with-contracts"
+ "title": "Compile Your Contract",
+ "anchor": "compile-your-contract"
},
{
"depth": 2,
@@ -7561,52 +7578,99 @@
}
],
"stats": {
- "chars": 6664,
- "words": 905,
- "headings": 8,
- "estimated_token_count_total": 1347
+ "chars": 3422,
+ "words": 456,
+ "headings": 6,
+ "estimated_token_count_total": 784
},
- "hash": "sha256:ceef35da1647c5f10217ad5058a5a932f0931e1c83e624539f0b67fd075eacb4",
+ "hash": "sha256:51d23086e729a9bd299c33409a3a647c385e1444961e0d41019455002561e009",
"token_estimator": "heuristic-v1"
},
{
- "id": "smart-contracts-dev-environments-remix-troubleshooting",
- "title": "smart-contracts-dev-environments-remix-troubleshooting",
- "slug": "smart-contracts-dev-environments-remix-troubleshooting",
+ "id": "smart-contracts-dev-environments-remix-troubleshooting-faq",
+ "title": "Troubleshooting Remix IDE",
+ "slug": "smart-contracts-dev-environments-remix-troubleshooting-faq",
"categories": [
- "Uncategorized"
+ "Smart Contracts",
+ "Tooling"
],
- "raw_md_url": "https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting.md",
- "html_url": "https://docs.polkadot.com/smart-contracts/dev-environments/remix/troubleshooting/",
- "preview": "TODO",
- "outline": [],
- "stats": {
- "chars": 5,
- "words": 1,
- "headings": 0,
- "estimated_token_count_total": 0
- },
- "hash": "sha256:56ba36249ea8216ad513b13df3de6c0e490ba214897674d30331f1c7e7edbef3",
- "token_estimator": "heuristic-v1"
- },
- {
- "id": "smart-contracts-dev-environments-remix-verify-a-contract",
- "title": "smart-contracts-dev-environments-remix-verify-a-contract",
- "slug": "smart-contracts-dev-environments-remix-verify-a-contract",
- "categories": [
- "Uncategorized"
+ "raw_md_url": "https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md",
+ "html_url": "https://docs.polkadot.com/smart-contracts/dev-environments/remix/troubleshooting-faq/",
+ "preview": "This guide provides solutions to common issues you may encounter when using Remix IDE with Polkadot Hub. If you're experiencing problems with compilation, deployment, or contract interaction, you'll likely find the solution here.",
+ "outline": [
+ {
+ "depth": 2,
+ "title": "Contract fails to compile or shows errors in the terminal",
+ "anchor": "contract-fails-to-compile-or-shows-errors-in-the-terminal"
+ },
+ {
+ "depth": 2,
+ "title": "The `artifacts` folder doesn't appear after compilation",
+ "anchor": "the-artifacts-folder-doesnt-appear-after-compilation"
+ },
+ {
+ "depth": 2,
+ "title": "Remix doesn't detect your wallet extension (MetaMask, Talisman, etc.)",
+ "anchor": "remix-doesnt-detect-your-wallet-extension-metamask-talisman-etc"
+ },
+ {
+ "depth": 2,
+ "title": "Wallet is connected but to the wrong network",
+ "anchor": "wallet-is-connected-but-to-the-wrong-network"
+ },
+ {
+ "depth": 2,
+ "title": "Deployment fails with \"insufficient funds\" or similar error",
+ "anchor": "deployment-fails-with-insufficient-funds-or-similar-error"
+ },
+ {
+ "depth": 2,
+ "title": "Deployment transaction is rejected or fails",
+ "anchor": "deployment-transaction-is-rejected-or-fails"
+ },
+ {
+ "depth": 2,
+ "title": "The \"Injected Provider - MetaMask\" option doesn't appear in the Environment dropdown",
+ "anchor": "the-injected-provider-metamask-option-doesnt-appear-in-the-environment-dropdown"
+ },
+ {
+ "depth": 2,
+ "title": "Wallet rejects transactions when trying to interact with deployed contracts",
+ "anchor": "wallet-rejects-transactions-when-trying-to-interact-with-deployed-contracts"
+ },
+ {
+ "depth": 2,
+ "title": "Deployed contract doesn't show in the **Deployed/Unpinned Contracts** section",
+ "anchor": "deployed-contract-doesnt-show-in-the-deployedunpinned-contracts-section"
+ },
+ {
+ "depth": 2,
+ "title": "Blue buttons (read functions) don't display return values",
+ "anchor": "blue-buttons-read-functions-dont-display-return-values"
+ },
+ {
+ "depth": 2,
+ "title": "Orange/red buttons (write functions) execute, but the state doesn't change",
+ "anchor": "orangered-buttons-write-functions-execute-but-the-state-doesnt-change"
+ },
+ {
+ "depth": 2,
+ "title": "Remix takes a long time to load or becomes unresponsive",
+ "anchor": "remix-takes-a-long-time-to-load-or-becomes-unresponsive"
+ },
+ {
+ "depth": 2,
+ "title": "Changes to files or folders don't appear in the File Explorer",
+ "anchor": "changes-to-files-or-folders-dont-appear-in-the-file-explorer"
+ }
],
- "raw_md_url": "https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-verify-a-contract.md",
- "html_url": "https://docs.polkadot.com/smart-contracts/dev-environments/remix/verify-a-contract/",
- "preview": "TODO",
- "outline": [],
"stats": {
- "chars": 5,
- "words": 1,
- "headings": 0,
- "estimated_token_count_total": 0
+ "chars": 6316,
+ "words": 872,
+ "headings": 13,
+ "estimated_token_count_total": 1306
},
- "hash": "sha256:56ba36249ea8216ad513b13df3de6c0e490ba214897674d30331f1c7e7edbef3",
+ "hash": "sha256:fccd676c0aee4f3dcbaccbcfb31fb6e3802445188eaea04ff79b759f018b562d",
"token_estimator": "heuristic-v1"
},
{
diff --git a/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-1.gif b/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-1.gif
new file mode 100644
index 000000000..704090f00
Binary files /dev/null and b/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-1.gif differ
diff --git a/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-2.gif b/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-2.gif
new file mode 100644
index 000000000..b30f0d078
Binary files /dev/null and b/images/smart-contracts/dev-environments/remix/deploy-a-contract/remix-2.gif differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-1.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-1.webp
index a0b9b327a..06dc648f0 100644
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-1.webp and b/images/smart-contracts/dev-environments/remix/get-started/remix-1.webp differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-10.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-10.webp
deleted file mode 100644
index eebbe5f93..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-10.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-11.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-11.webp
deleted file mode 100644
index 885e62ce9..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-11.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-12.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-12.webp
deleted file mode 100644
index 9d8b1db39..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-12.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-13.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-13.webp
deleted file mode 100644
index 5dd785bb0..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-13.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-2.gif b/images/smart-contracts/dev-environments/remix/get-started/remix-2.gif
new file mode 100644
index 000000000..b0c3feeee
Binary files /dev/null and b/images/smart-contracts/dev-environments/remix/get-started/remix-2.gif differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-2.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-2.webp
deleted file mode 100644
index 18742422e..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-2.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-3.gif b/images/smart-contracts/dev-environments/remix/get-started/remix-3.gif
new file mode 100644
index 000000000..f4ecea707
Binary files /dev/null and b/images/smart-contracts/dev-environments/remix/get-started/remix-3.gif differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-3.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-3.webp
deleted file mode 100644
index 13f2fb4b0..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-3.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-4.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-4.webp
deleted file mode 100644
index 9b728e6da..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-4.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-5.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-5.webp
deleted file mode 100644
index 8b80bdb0e..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-5.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-6.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-6.webp
deleted file mode 100644
index 18ff44a69..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-6.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-7.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-7.webp
deleted file mode 100644
index 50db4662e..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-7.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-8.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-8.webp
deleted file mode 100644
index 8b364aa1f..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-8.webp and /dev/null differ
diff --git a/images/smart-contracts/dev-environments/remix/get-started/remix-9.webp b/images/smart-contracts/dev-environments/remix/get-started/remix-9.webp
deleted file mode 100644
index fe6607e92..000000000
Binary files a/images/smart-contracts/dev-environments/remix/get-started/remix-9.webp and /dev/null differ
diff --git a/llms-full.jsonl b/llms-full.jsonl
index 839eae83d..a4e285837 100644
--- a/llms-full.jsonl
+++ b/llms-full.jsonl
@@ -985,14 +985,30 @@
{"page_id": "smart-contracts-dev-environments-local-dev-node", "page_title": "Local Development Node", "index": 1, "depth": 2, "title": "Prerequisites", "anchor": "prerequisites", "start_char": 529, "end_char": 858, "estimated_token_count": 76, "token_estimator": "heuristic-v1", "text": "## Prerequisites\n\nBefore getting started, ensure you have done the following:\n\n- Completed the [Install Polkadot SDK Dependencies](/parachains/install-polkadot-sdk/){target=\\_blank} guide and successfully installed [Rust](https://rust-lang.org/){target=\\_blank} and the required packages to set up your development environment."}
{"page_id": "smart-contracts-dev-environments-local-dev-node", "page_title": "Local Development Node", "index": 2, "depth": 2, "title": "Install the Revive Dev Node and ETH-RPC Adapter", "anchor": "install-the-revive-dev-node-and-eth-rpc-adapter", "start_char": 858, "end_char": 2337, "estimated_token_count": 340, "token_estimator": "heuristic-v1", "text": "## Install the Revive Dev Node and ETH-RPC Adapter\n\nThe Polkadot SDK repository contains both the [Revive Dev node](https://github.com/paritytech/polkadot-sdk/tree/8e2b6f742a38bb13688e12abacded0aab2dbbb23/substrate/frame/revive/dev-node){target=\\_blank} implementation and the [ETH-RPC adapter](https://github.com/paritytech/polkadot-sdk/tree/8e2b6f742a38bb13688e12abacded0aab2dbbb23/substrate/frame/revive/rpc){target=\\_blank} required for Ethereum compatibility. Start by cloning the repository and navigating to the project directory:\n\n```bash\ngit clone https://github.com/paritytech/polkadot-sdk.git\ncd polkadot-sdk\n```\n\nNext, you need to compile the two essential components for your development environment. The Substrate node provides the core blockchain runtime with smart contract support, while the ETH-RPC adapter enables Ethereum JSON-RPC compatibility for existing tooling:\n\n```bash\ncargo build -p revive-dev-node --bin revive-dev-node --release\ncargo build -p pallet-revive-eth-rpc --bin eth-rpc --release\n```\n\nThe compilation process may take some time depending on your system specifications, potentially up to 30 minutes. Release builds are optimized for performance but take longer to compile than debug builds. After successful compilation, you can verify the binaries are available in the `target/release` directory:\n\n- **Revive Dev node path**: `polkadot-sdk/target/release/revive-dev-node`\n- **ETH-RPC adapter path**: `polkadot-sdk/target/release/eth-rpc`"}
{"page_id": "smart-contracts-dev-environments-local-dev-node", "page_title": "Local Development Node", "index": 3, "depth": 2, "title": "Run the Local Node", "anchor": "run-the-local-node", "start_char": 2337, "end_char": 8828, "estimated_token_count": 1912, "token_estimator": "heuristic-v1", "text": "## Run the Local Node\n\nWith the binaries compiled, you can now start your local development environment. The setup requires running two processes.\n\nStart the node first, which will initialize a local blockchain with the `dev` chain specification. This configuration includes `pallet-revive` for smart contract functionality and uses pre-funded development accounts for testing:\n\n```bash\n./target/release/revive-dev-node --dev\n```\n\nThe node will begin producing blocks immediately and display initialization logs:\n\n
\n ./target/release/revive-dev-node --dev\n
\n 2025-05-29 10:42:35 Substrate Node\n 2025-05-29 10:42:35 ✌️ version 3.0.0-dev-38b7581fc04\n 2025-05-29 10:42:35 ❤️ by Parity Technologies <admin@parity.io>, 2017-2025\n 2025-05-29 10:42:35 📋 Chain specification: Development\n 2025-05-29 10:42:35 🏷 Node name: annoyed-aunt-3163\n 2025-05-29 10:42:35 👤 Role: AUTHORITY\n 2025-05-29 10:42:35 💾 Database: RocksDb at /var/folders/x0/xl_kjddj3ql3bx7752yr09hc0000gn/T/substrate2P85EF/chains/dev/db/full\n 2025-05-29 10:42:40 🔨 Initializing Genesis block/state (state: 0xfc05…482e, header-hash: 0x1ae1…b8b4)\n 2025-05-29 10:42:40 Creating transaction pool txpool_type=SingleState ready=Limit { count: 8192, total_bytes: 20971520 } future=Limit { count: 819, total_bytes: 2097152 }\n 2025-05-29 10:42:40 👴 Loading GRANDPA authority set from genesis on what appears to be first startup.\n 2025-05-29 10:42:40 👶 Creating empty BABE epoch changes on what appears to be first startup.\n 2025-05-29 10:42:40 Using default protocol ID \"sup\" because none is configured in the chain specs\n 2025-05-29 10:42:40 🏷 Local node identity is: 12D3KooWAH8fgJv3hce7Yv4yKG4YXQiRqESFu6755DBnfZQU8Znm\n 2025-05-29 10:42:40 Running libp2p network backend\n 2025-05-29 10:42:40 local_peer_id=12D3KooWAH8fgJv3hce7Yv4yKG4YXQiRqESFu6755DBnfZQU8Znm\n 2025-05-29 10:42:40 💻 Operating system: macos\n 2025-05-29 10:42:40 💻 CPU architecture: aarch64\n 2025-05-29 10:42:40 📦 Highest known block at #0\n 2025-05-29 10:42:40 Error binding to '127.0.0.1:9615': Os { code: 48, kind: AddrInUse, message: \"Address already in use\" }\n 2025-05-29 10:42:40 Running JSON-RPC server: addr=127.0.0.1:63333,[::1]:63334\n 2025-05-29 10:42:40 🏁 CPU single core score: 1.24 GiBs, parallelism score: 1.08 GiBs with expected cores: 8\n 2025-05-29 10:42:40 🏁 Memory score: 49.42 GiBs\n 2025-05-29 10:42:40 🏁 Disk score (seq. writes): 1.91 GiBs\n 2025-05-29 10:42:40 🏁 Disk score (rand. writes): 529.02 MiBs\n 2025-05-29 10:42:40 👶 Starting BABE Authorship worker\n 2025-05-29 10:42:40 🥩 BEEFY gadget waiting for BEEFY pallet to become available...\n 2025-05-29 10:42:40 Failed to trigger bootstrap: No known peers.\n 2025-05-29 10:42:42 🙌 Starting consensus session on top of parent 0x1ae19030b13592b5e6fd326f26efc7b31a4f588303d348ef89ae9ebca613b8b4 (#0)\n 2025-05-29 10:42:42 🎁 Prepared block for proposing at 1 (5 ms) hash: 0xe046f22307fba58a3bd0cc21b1a057843d4342da8876fd44aba206f124528df0; parent_hash: 0x1ae1…b8b4; end: NoMoreTransactions; extrinsics_count: 2\n 2025-05-29 10:42:42 🔖 Pre-sealed block for proposal at 1. Hash now 0xa88d36087e7bf8ee59c1b17e0003092accf131ff8353a620410d7283657ce36a, previously 0xe046f22307fba58a3bd0cc21b1a057843d4342da8876fd44aba206f124528df0.\n 2025-05-29 10:42:42 👶 New epoch 0 launching at block 0xa88d…e36a (block slot 582842054 >= start slot 582842054).\n 2025-05-29 10:42:42 👶 Next epoch starts at slot 582842254\n 2025-05-29 10:42:42 🏆 Imported #1 (0x1ae1…b8b4 → 0xa88d…e36a)\n
\n\nFor debugging purposes or to monitor low-level operations, you can enable detailed logging by setting environment variables before running the command:\n\n```bash\nRUST_LOG=\"error,evm=debug,sc_rpc_server=info,runtime::revive=debug\" ./target/release/revive-dev-node --dev\n```\n\nOnce the node is running, open a new terminal window and start the ETH-RPC adapter. This component translates Ethereum JSON-RPC calls into Substrate-compatible requests, allowing you to use familiar Ethereum tools like MetaMask, Hardhat, or Ethers.js:\n\n```bash\n./target/release/eth-rpc --dev\n```\n\nYou should see logs indicating that the adapter is ready to accept connections:\n\n
\n ./target/release/eth-rpc --dev\n
\n 2025-05-29 10:48:48 Running in --dev mode, RPC CORS has been disabled.\n 2025-05-29 10:48:48 Running in --dev mode, RPC CORS has been disabled.\n 2025-05-29 10:48:48 🌐 Connecting to node at: ws://127.0.0.1:9944 ...\n 2025-05-29 10:48:48 🌟 Connected to node at: ws://127.0.0.1:9944\n 2025-05-29 10:48:48 💾 Using in-memory database, keeping only 256 blocks in memory\n 2025-05-29 10:48:48 〽️ Prometheus exporter started at 127.0.0.1:9616\n 2025-05-29 10:48:48 Running JSON-RPC server: addr=127.0.0.1:8545,[::1]:8545\n 2025-05-29 10:48:48 🔌 Subscribing to new blocks (BestBlocks)\n 2025-05-29 10:48:48 🔌 Subscribing to new blocks (FinalizedBlocks)\n
\n\nSimilar to the Revive Dev node, you can enable detailed logging for the ETH-RPC adapter to troubleshoot issues:\n\n```bash\nRUST_LOG=\"info,eth-rpc=debug\" ./target/release/eth-rpc --dev\n```\n\nYour local development environment is now active and accessible at `http://localhost:8545`. This endpoint accepts standard Ethereum JSON-RPC requests, enabling seamless integration with existing Ethereum development tools and workflows. \n\nYou can connect wallets, deploy contracts using Remix or Hardhat, and interact with your smart contracts as you would on any Ethereum-compatible network."}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 0, "depth": 2, "title": "Overview", "anchor": "overview", "start_char": 1098, "end_char": 1411, "estimated_token_count": 67, "token_estimator": "heuristic-v1", "text": "## Overview\n\nRemix IDE is a robust browser-based development environment for smart contracts. This guide will walk you through the essentials of the [Polkadot Remix IDE](https://remix.polkadot.io/){target=\\_blank} to understand the processes of compiling, developing, and deploying smart contracts on Asset Hub."}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 1, "depth": 2, "title": "Prerequisites", "anchor": "prerequisites", "start_char": 1411, "end_char": 1775, "estimated_token_count": 88, "token_estimator": "heuristic-v1", "text": "## Prerequisites\n\nBefore getting started, ensure you have:\n\n- A web browser with [Talisman](https://talisman.xyz/){target=\\_blank} extension installed.\n- Basic understanding of Solidity programming.\n- Some WND test tokens to cover transaction fees (easily obtainable from the [Polkadot faucet](https://faucet.polkadot.io/westend?parachain=1000){target=\\_blank})."}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 2, "depth": 2, "title": "Accessing Remix IDE", "anchor": "accessing-remix-ide", "start_char": 1775, "end_char": 2177, "estimated_token_count": 104, "token_estimator": "heuristic-v1", "text": "## Accessing Remix IDE\n\nNavigate to [https://remix.polkadot.io/](https://remix.polkadot.io/){target=\\_blank}. The interface will load with a default workspace containing sample contracts.\n\n\n\nIn this interface, you can access a file explorer, edit your code, interact with various plugins for development, and use a terminal."}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 3, "depth": 2, "title": "Creating a New Contract", "anchor": "creating-a-new-contract", "start_char": 2177, "end_char": 3262, "estimated_token_count": 248, "token_estimator": "heuristic-v1", "text": "## Creating a New Contract\n\nTo create a new contract using the Polkadot Remix IDE, you can follow these steps:\n\n1. Select the **Create a new file** button in the `contracts` folder.\n\n \n\n2. Name your file with a `.sol` extension, in this case, `Counter.sol`.\n\n \n\n3. Write your Solidity code in the editor.\n\n You can use the following code as an example:\n\n ???- \"Counter.sol\"\n \n ```solidity\n // SPDX-License-Identifier: MIT\n pragma solidity ^0.8.0;\n\n contract Counter {\n int256 private count;\n\n function increment() public {\n count += 1;\n }\n\n function decrement() public {\n count -= 1;\n }\n\n function getCount() public view returns (int256) {\n return count;\n }\n }\n ```\n\n "}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 4, "depth": 2, "title": "Compiling Your Contract", "anchor": "compiling-your-contract", "start_char": 3262, "end_char": 4012, "estimated_token_count": 188, "token_estimator": "heuristic-v1", "text": "## Compiling Your Contract\n\n1. To compile your contract, you need to:\n\n 1. Navigate to the **Solidity Compiler** tab (third icon in the left sidebar).\n 2. Select **Compile** or use `Ctrl+S`.\n\n \n \n !!! note\n Compilation errors and warnings appear in the terminal panel at the bottom of the screen.\n\n1. After compiling your contract, you can navigate to the **File Explorer** tab (first icon in the left sidebar) and check that:\n 1. The `artifact` folder is present.\n 2. The `Counter_metadata.json` and the `Counter.json` files have been generated.\n\n "}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 5, "depth": 2, "title": "Deploying Contracts", "anchor": "deploying-contracts", "start_char": 4012, "end_char": 5010, "estimated_token_count": 275, "token_estimator": "heuristic-v1", "text": "## Deploying Contracts\n\n1. To deploy your contract, you need to:\n\n 1. Navigate to the **Deploy & Run Transactions** tab (fourth icon in the left sidebar).\n 2. Click the **Environment** dropdown.\n 3. Select **Customize this list**.\n\n \n\n2. Enable the **Injected Provider - Talisman** option.\n\n \n\n4. Click again the **Environment** dropdown and select **Injected Provider - Talisman**.\n\n \n\n4. Click the **Deploy** button and then click **Approve** in the Talisman wallet popup.\n\n \n\n5. Once your contract is deployed successfully, you will see the following output in the Remix terminal:\n\n "}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 6, "depth": 2, "title": "Interacting with Contracts", "anchor": "interacting-with-contracts", "start_char": 5010, "end_char": 5810, "estimated_token_count": 190, "token_estimator": "heuristic-v1", "text": "## Interacting with Contracts\n\nOnce deployed, your contract appears in the **Deployed/Unpinned Contracts** section:\n\n1. Expand the contract to view available methods.\n\n \n\n !!! tip\n Pin your frequently used contracts to the **Pinned Contracts** section for easy access.\n\n2. To interact with the contract, you can select any of the exposed methods.\n\n \n\n In this way, you can interact with your deployed contract by reading its state or writing to it. The button color indicates the type of interaction available:\n\n - **Red**: Modifies state and is payable.\n - **Orange**: Modifies state only.\n - **Blue**: Reads state."}
-{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Polkadot Remix IDE", "index": 7, "depth": 2, "title": "Where to Go Next", "anchor": "where-to-go-next", "start_char": 5810, "end_char": 6664, "estimated_token_count": 187, "token_estimator": "heuristic-v1", "text": "## Where to Go Next\n\nThe Polkadot Remix IDE offers an environment for developing, compiling, and deploying smart contracts on Asset Hub. Its intuitive interface allows developers to easily write Solidity code, compile contracts, and interact with them directly in the browser.\n\nExplore more about smart contracts through these resources:\n\n
\n\n- Guide __Smart Contracts on Polkadot__\n\n ---\n\n Dive into advanced smart contract concepts.\n\n [:octicons-arrow-right-24: Get Started](/smart-contracts/)\n\n- External __OpenZeppelin Contracts__\n\n ---\n\n Test your skills by deploying a simple contracts with prebuilt templates.\n\n [:octicons-arrow-right-24: Get Started](https://www.openzeppelin.com/solidity-contracts){target=\\_blank}\n\n
"}
+{"page_id": "smart-contracts-dev-environments-remix-deploy-a-contract", "page_title": "Deploy Contracts Using Remix IDE", "index": 0, "depth": 2, "title": "Overview", "anchor": "overview", "start_char": 42, "end_char": 338, "estimated_token_count": 54, "token_estimator": "heuristic-v1", "text": "## Overview\n\nAfter compiling your smart contract in Remix IDE, the next step is to deploy it to the Polkadot Hub network. This guide will walk you through the deployment process using a wallet provider and show you how to interact with your deployed contracts directly from the Remix interface."}
+{"page_id": "smart-contracts-dev-environments-remix-deploy-a-contract", "page_title": "Deploy Contracts Using Remix IDE", "index": 1, "depth": 2, "title": "Prerequisites", "anchor": "prerequisites", "start_char": 338, "end_char": 1012, "estimated_token_count": 179, "token_estimator": "heuristic-v1", "text": "## Prerequisites\n\nBefore deploying your contract, ensure you have:\n\n- Completed the [Remix IDE setup](/smart-contracts/dev-environments/remix/get-started/){target=\\_blank} and have a compiled contract ready.\n- A compatible wallet extension installed (e.g., [MetaMask](https://metamask.io/){target=\\_blank} or [Talisman](https://www.talisman.xyz/){target=\\_blank}).\n- Your wallet connected to the Polkadot Hub network. Check the [Connect to Polkadot](/smart-contracts/connect/){target=\\_blank} guide for more information.\n- Test tokens in your wallet to cover deployment and transaction fees (available from the [Polkadot faucet](/smart-contracts/faucet/){target=\\_blank})."}
+{"page_id": "smart-contracts-dev-environments-remix-deploy-a-contract", "page_title": "Deploy Contracts Using Remix IDE", "index": 2, "depth": 2, "title": "Deploy Contracts", "anchor": "deploy-contracts", "start_char": 1012, "end_char": 1653, "estimated_token_count": 170, "token_estimator": "heuristic-v1", "text": "## Deploy Contracts\n\nThe steps to use Remix IDE to deploy a contract to Polkadot Hub are as follows:\n\n1. Navigate to [Remix](https://remix.ethereum.org/){target=\\_blank} in your web browser.\n2. Locate the **Deploy & Run Transactions** tab.\n3. Select the **Environment** dropdown.\n4. Select **Browser Extension**.\n5. Select the **Injected Provider - MetaMask** option.\n6. Click the **Deploy** button and then click **Confirm** in the wallet popup.\n\nOnce your contract is deployed successfully, you will see the deployment confirmation in the Remix terminal.\n\n"}
+{"page_id": "smart-contracts-dev-environments-remix-deploy-a-contract", "page_title": "Deploy Contracts Using Remix IDE", "index": 3, "depth": 2, "title": "Interact with Contracts", "anchor": "interact-with-contracts", "start_char": 1653, "end_char": 3347, "estimated_token_count": 377, "token_estimator": "heuristic-v1", "text": "## Interact with Contracts\n\nDeployed contracts appear in the **Deployed/Unpinned Contracts** section. Follow these steps to interact with the deployed contract:\n\n1. Expand the contract to view available methods.\n\n !!! tip\n Pin your frequently used contracts to the **Pinned Contracts** section for easy access.\n\n2. Select any of the exposed methods to interact with the contract.\n\n You can use these methods to interact with your deployed contract by reading or writing to its state. Remix IDE uses a color-coding scheme for method buttons to help differentiate between types of available methods as follows:\n\n - **Blue buttons**: indicate `view` or `pure` functions which read state only. Interactions do not create a new transaction and do not incur gas fees.\n - **Orange buttons**: label `non-payable` functions which change contract state but don't accept any value (ETH or other tokens) being sent with the transaction.\n - **Red buttons**: designate `payable` functions which create a transaction and can accept a value (ETH or other tokens) to send with the transaction.\n\nIf you deployed the `Counter.sol` contract from [Remix IDE setup](/smart-contracts/dev-environments/remix/get-started/){target=\\_blank}, you can try interacting with the exposed methods as follows:\n\n1. Select the **GetCount** button to read the current count value.\n\n2. Select the **Increment** button to increment the count value.\n\n3. Submit the transaction and click the **Confirm** button in the wallet pop-up.\n\nOnce the transaction is confirmed, you will see the updated count value in the Remix terminal.\n\n"}
+{"page_id": "smart-contracts-dev-environments-remix-deploy-a-contract", "page_title": "Deploy Contracts Using Remix IDE", "index": 4, "depth": 2, "title": "Where to Go Next", "anchor": "where-to-go-next", "start_char": 3347, "end_char": 3828, "estimated_token_count": 107, "token_estimator": "heuristic-v1", "text": "## Where to Go Next\n\nYou've successfully deployed and interacted with your smart contract on Polkadot Hub using Remix IDE. Continue enhancing your development workflow with these resources:\n\n
\n\n\n\n- Guide __Troubleshooting__\n\n ---\n\n Find solutions to common issues when working with Remix IDE.\n\n [:octicons-arrow-right-24: Get Started](/smart-contracts/dev-environments/remix/troubleshooting-faq/)\n\n
"}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 0, "depth": 2, "title": "Introduction", "anchor": "introduction", "start_char": 13, "end_char": 325, "estimated_token_count": 66, "token_estimator": "heuristic-v1", "text": "## Introduction\n\nRemix IDE is a robust browser-based development environment for smart contracts. This guide will walk you through the essentials of the [Remix IDE](https://remix.ethereum.org/){target=\\_blank} to understand the processes of compiling, developing, and deploying smart contracts on Polkadot Hub."}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 1, "depth": 2, "title": "Prerequisites", "anchor": "prerequisites", "start_char": 325, "end_char": 663, "estimated_token_count": 80, "token_estimator": "heuristic-v1", "text": "## Prerequisites\n\nBefore getting started, ensure you have:\n\n- A web browser with the [MetaMask](https://metamask.io/){target=\\_blank} extension installed.\n- Basic understanding of Solidity programming.\n- Some test tokens to cover transaction fees (easily obtainable from the [Polkadot faucet](/smart-contracts/faucet/){target=\\_blank})."}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 2, "depth": 2, "title": "Access Remix IDE", "anchor": "access-remix-ide", "start_char": 663, "end_char": 1060, "estimated_token_count": 103, "token_estimator": "heuristic-v1", "text": "## Access Remix IDE\n\nNavigate to [https://remix.ethereum.org/](https://remix.ethereum.org/){target=\\_blank}. The interface will load with a default workspace containing sample contracts.\n\n\n\nIn this interface, you can access a file explorer, edit your code, interact with various development plugins, and use a terminal."}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 3, "depth": 2, "title": "Create a New Contract", "anchor": "create-a-new-contract", "start_char": 1060, "end_char": 1968, "estimated_token_count": 193, "token_estimator": "heuristic-v1", "text": "## Create a New Contract\n\nTo create a new contract using the Remix IDE, you can follow these steps:\n\n1. Select the **Create a new file** button in the `contracts` folder.\n\n2. Name your file with a `.sol` extension, in this case, `Counter.sol`.\n\n3. Write your Solidity code in the editor. You can use the following code as an example:\n\n ??? code \"Counter.sol\"\n \n ```solidity\n // SPDX-License-Identifier: MIT\n pragma solidity ^0.8.0;\n\n contract Counter {\n int256 private count;\n\n function increment() public {\n count += 1;\n }\n\n function decrement() public {\n count -= 1;\n }\n\n function getCount() public view returns (int256) {\n return count;\n }\n }\n ```\n\n "}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 4, "depth": 2, "title": "Compile Your Contract", "anchor": "compile-your-contract", "start_char": 1968, "end_char": 2543, "estimated_token_count": 145, "token_estimator": "heuristic-v1", "text": "## Compile Your Contract\n\nTo compile your contract, you need to:\n\n1. Navigate to the **Solidity Compiler** tab.\n2. Select **Compile** or use `Ctrl+S`.\n\n !!! note\n Compilation errors and warnings appear in the terminal panel at the bottom of the screen.\n\n3. After compiling your contract, you can navigate to the **File Explorer** tab and check that:\n 1. The **artifacts** folder is present.\n 2. The `Counter_metadata.json` and the `Counter.json` files have been generated.\n\n "}
+{"page_id": "smart-contracts-dev-environments-remix-get-started", "page_title": "Use the Remix IDE on Polkadot Hub", "index": 5, "depth": 2, "title": "Where to Go Next", "anchor": "where-to-go-next", "start_char": 2543, "end_char": 3422, "estimated_token_count": 197, "token_estimator": "heuristic-v1", "text": "## Where to Go Next\n\nRemix offers an environment for developing, compiling, and deploying smart contracts on Polkadot Hub. Its intuitive interface allows developers to easily write Solidity code, compile contracts, and interact with them directly in the browser.\n\nExplore more about smart contracts through these resources:\n\n
\n\n- Guide __Deploy a Contract__\n\n ---\n\n Learn how to deploy smart contracts using Remix IDE.\n\n [:octicons-arrow-right-24: Get Started](/smart-contracts/dev-environments/remix/deploy-a-contract/)\n\n- External __OpenZeppelin Contracts__\n\n ---\n\n Test your skills by deploying simple contracts using prebuilt templates.\n\n [:octicons-arrow-right-24: Get Started](https://www.openzeppelin.com/solidity-contracts){target=\\_blank}\n\n
"}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 0, "depth": 2, "title": "Contract fails to compile or shows errors in the terminal", "anchor": "contract-fails-to-compile-or-shows-errors-in-the-terminal", "start_char": 260, "end_char": 978, "estimated_token_count": 161, "token_estimator": "heuristic-v1", "text": "## Contract fails to compile or shows errors in the terminal\n\n- **Check Solidity version compatibility**:\n - Ensure your contract's pragma statement matches the compiler version selected in the **Solidity Compiler** tab.\n - Example: If your contract uses `pragma solidity ^0.8.0;`, select compiler version 0.8.x or higher.\n\n- **Review syntax errors**:\n - Carefully read error messages in the terminal panel at the bottom of the screen.\n - Common issues include missing semicolons, incorrect function visibility, or mismatched brackets.\n\n- **Clear cache and recompile**:\n - Delete the `artifacts` folder in the **File Explorer**.\n - Try compiling again with `Ctrl+S` or click the **Compile** button."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 1, "depth": 2, "title": "The `artifacts` folder doesn't appear after compilation", "anchor": "the-artifacts-folder-doesnt-appear-after-compilation", "start_char": 978, "end_char": 1244, "estimated_token_count": 59, "token_estimator": "heuristic-v1", "text": "## The `artifacts` folder doesn't appear after compilation\n\n- Ensure compilation completed successfully without errors.\n- Refresh the **File Explorer** by clicking away and back to the **File Explorer** tab.\n- Check that your `.sol` file is saved before compiling."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 2, "depth": 2, "title": "Remix doesn't detect your wallet extension (MetaMask, Talisman, etc.)", "anchor": "remix-doesnt-detect-your-wallet-extension-metamask-talisman-etc", "start_char": 1244, "end_char": 1967, "estimated_token_count": 158, "token_estimator": "heuristic-v1", "text": "## Remix doesn't detect your wallet extension (MetaMask, Talisman, etc.)\n\n- **Verify wallet installation**:\n - Ensure your wallet extension is properly installed and enabled in your browser.\n - Check that the extension icon appears in your browser toolbar.\n\n- **Refresh the page**:\n - Reload the Remix IDE page and try reconnecting.\n\n- **Check browser permissions**:\n - Ensure Remix has permission to interact with the wallet extension.\n - Check your browser's extension settings.\n\n- **Use correct environment**:\n - In the **Deploy & Run Transactions** tab, select **Browser Extension** from the **Environment** dropdown.\n - Choose **Injected Provider - MetaMask** (works with most wallet providers)."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 3, "depth": 2, "title": "Wallet is connected but to the wrong network", "anchor": "wallet-is-connected-but-to-the-wrong-network", "start_char": 1967, "end_char": 2240, "estimated_token_count": 58, "token_estimator": "heuristic-v1", "text": "## Wallet is connected but to the wrong network\n\n1. Open your wallet extension.\n2. Switch to the Polkadot Hub network.\n3. Refresh the Remix IDE if the network change isn't detected automatically.\n4. Verify the network name and chain ID match Polkadot Hub's configuration."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 4, "depth": 2, "title": "Deployment fails with \"insufficient funds\" or similar error", "anchor": "deployment-fails-with-insufficient-funds-or-similar-error", "start_char": 2240, "end_char": 2645, "estimated_token_count": 91, "token_estimator": "heuristic-v1", "text": "## Deployment fails with \"insufficient funds\" or similar error\n\n- **Check your balance**:\n - Verify you have enough test tokens in your connected wallet.\n - Visit the [Polkadot faucet](/smart-contracts/faucet/){target=\\_blank} to obtain test tokens.\n\n- **Wait for faucet tokens**:\n - Allow a few minutes for faucet transactions to complete.\n - Refresh your wallet to see the updated balance."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 5, "depth": 2, "title": "Deployment transaction is rejected or fails", "anchor": "deployment-transaction-is-rejected-or-fails", "start_char": 2645, "end_char": 3252, "estimated_token_count": 130, "token_estimator": "heuristic-v1", "text": "## Deployment transaction is rejected or fails\n\n- **Increase gas limit**:\n - In the **Deploy & Run Transactions** tab, adjust the **Gas Limit** field.\n - Try increasing it by 20-30% from the estimated amount.\n\n- **Check contract constructor parameters**:\n - Ensure any required constructor parameters are provided correctly.\n - Verify parameter types match the contract's constructor signature.\n\n- **Verify contract selection**:\n - Ensure you've selected the correct contract from the **Contract** dropdown.\n - If you have multiple contracts, make sure you're deploying the intended one."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 6, "depth": 2, "title": "The \"Injected Provider - MetaMask\" option doesn't appear in the Environment dropdown", "anchor": "the-injected-provider-metamask-option-doesnt-appear-in-the-environment-dropdown", "start_char": 3252, "end_char": 3603, "estimated_token_count": 75, "token_estimator": "heuristic-v1", "text": "## The \"Injected Provider - MetaMask\" option doesn't appear in the Environment dropdown\n\n- Select **Browser Extension** from the **Environment** dropdown to populate the **Injected Provider - Metamask** option.\n- Ensure your wallet extension is unlocked and active.\n- Try disabling and re-enabling the wallet extension.\n- Refresh the Remix IDE page."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 7, "depth": 2, "title": "Wallet rejects transactions when trying to interact with deployed contracts", "anchor": "wallet-rejects-transactions-when-trying-to-interact-with-deployed-contracts", "start_char": 3603, "end_char": 4117, "estimated_token_count": 107, "token_estimator": "heuristic-v1", "text": "## Wallet rejects transactions when trying to interact with deployed contracts\n\n- **Check wallet unlock status**:\n - Ensure your wallet is unlocked.\n - Verify you're approving the transaction in the wallet pop-up.\n\n- **Verify sufficient gas**:\n - Ensure you have enough tokens to cover the transaction fee.\n - The wallet pop-up should show the estimated gas cost.\n\n- **Network mismatch**:\n - Confirm your wallet is still connected to Polkadot Hub.\n - Check that Remix is using the same network."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 8, "depth": 2, "title": "Deployed contract doesn't show in the **Deployed/Unpinned Contracts** section", "anchor": "deployed-contract-doesnt-show-in-the-deployedunpinned-contracts-section", "start_char": 4117, "end_char": 4485, "estimated_token_count": 75, "token_estimator": "heuristic-v1", "text": "## Deployed contract doesn't show in the **Deployed/Unpinned Contracts** section\n\n- Wait for the transaction to be confirmed on-chain.\n- Check the Remix terminal for deployment confirmation.\n- Scroll down in the **Deploy & Run Transactions** panel to find the deployed contracts section.\n- If the deployment transaction failed, check the terminal for error messages."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 9, "depth": 2, "title": "Blue buttons (read functions) don't display return values", "anchor": "blue-buttons-read-functions-dont-display-return-values", "start_char": 4485, "end_char": 4989, "estimated_token_count": 104, "token_estimator": "heuristic-v1", "text": "## Blue buttons (read functions) don't display return values\n\n- **Check the terminal**:\n - Return values appear in the terminal panel at the bottom.\n - Look for the decoded output section.\n\n- **Verify contract state**:\n - Ensure the contract has been properly initialized.\n - Check if the function requires a specific contract state to return values.\n\n- **Network connection**:\n - Verify you're still connected to the correct network.\n - Try refreshing the connection to your wallet."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 10, "depth": 2, "title": "Orange/red buttons (write functions) execute, but the state doesn't change", "anchor": "orangered-buttons-write-functions-execute-but-the-state-doesnt-change", "start_char": 4989, "end_char": 5681, "estimated_token_count": 139, "token_estimator": "heuristic-v1", "text": "## Orange/red buttons (write functions) execute, but the state doesn't change\n\n- **Wait for transaction confirmation**:\n - Transactions need to be mined before state changes are reflected.\n - Check the terminal for transaction status.\n - Wait a few seconds and try rereading the state.\n\n- **Transaction failed**:\n - Check if the transaction was actually successful in the terminal.\n - Look for revert reasons or error messages.\n - Verify you approved the transaction in your wallet.\n\n- **Check transaction parameters**:\n - Ensure you're passing the correct parameters to the function.\n - For payable functions (red buttons), verify you're sending the correct amount."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 11, "depth": 2, "title": "Remix takes a long time to load or becomes unresponsive", "anchor": "remix-takes-a-long-time-to-load-or-becomes-unresponsive", "start_char": 5681, "end_char": 6092, "estimated_token_count": 93, "token_estimator": "heuristic-v1", "text": "## Remix takes a long time to load or becomes unresponsive\n\n- **Clear browser cache**:\n - Clear your browser's cache and cookies.\n - Restart your browser.\n\n- **Disable unnecessary plugins**:\n - In Remix, deactivate plugins you're not using via the Plugin Manager.\n\n- **Use a supported browser**:\n - Use Chrome, Firefox, or Brave for the best compatibility.\n - Ensure your browser is up to date."}
+{"page_id": "smart-contracts-dev-environments-remix-troubleshooting-faq", "page_title": "Troubleshooting Remix IDE", "index": 12, "depth": 2, "title": "Changes to files or folders don't appear in the File Explorer", "anchor": "changes-to-files-or-folders-dont-appear-in-the-file-explorer", "start_char": 6092, "end_char": 6316, "estimated_token_count": 56, "token_estimator": "heuristic-v1", "text": "## Changes to files or folders don't appear in the File Explorer\n\n- Click the refresh icon in the **File Explorer**.\n- Switch to a different tab and back to **File Explorer**.\n- Save your work and reload the Remix IDE page."}
{"page_id": "smart-contracts-explorers", "page_title": "Block Explorers", "index": 0, "depth": 2, "title": "Introduction", "anchor": "introduction", "start_char": 189, "end_char": 497, "estimated_token_count": 49, "token_estimator": "heuristic-v1", "text": "## Introduction\n\nBlock explorers serve as comprehensive blockchain analytics platforms that provide access to on-chain data. These web applications function as search engines for blockchain networks, allowing users to query, visualize, and analyze blockchain data in real time through intuitive interfaces."}
{"page_id": "smart-contracts-explorers", "page_title": "Block Explorers", "index": 1, "depth": 2, "title": "Core Functionality", "anchor": "core-functionality", "start_char": 497, "end_char": 1187, "estimated_token_count": 139, "token_estimator": "heuristic-v1", "text": "## Core Functionality\n\nThese block explorers provide essential capabilities for interacting with smart contracts in Polkadot Hub:\n\n- **Transaction tracking**: Monitor transaction status, confirmations, fees, and metadata.\n- **Address analysis**: View account balances, transaction history, and associated contracts.\n- **Block information**: Examine block contents.\n- **Smart contract interaction**: Review contract code, verification status, and interaction history.\n- **Token tracking**: Monitor ERC-20, ERC-721, and other token standards with transfer history and holder analytics.\n- **Network statistics**: Access metrics on transaction volume, gas usage, and other network parameters."}
{"page_id": "smart-contracts-explorers", "page_title": "Block Explorers", "index": 2, "depth": 2, "title": "Available Block Explorers", "anchor": "available-block-explorers", "start_char": 1187, "end_char": 1399, "estimated_token_count": 30, "token_estimator": "heuristic-v1", "text": "## Available Block Explorers\n\nThe following block explorers are available for PolkaVM smart contracts, providing specialized tools for monitoring and analyzing contract activity within the Polkadot ecosystem:"}
diff --git a/llms.txt b/llms.txt
index 6b479c954..485efb239 100644
--- a/llms.txt
+++ b/llms.txt
@@ -6,7 +6,7 @@
This directory lists URLs for raw Markdown pages that complement the rendered pages on the documentation site. Use these Markdown files to retain semantic context when prompting models while avoiding passing HTML elements.
## Metadata
-- Documentation pages: 146
+- Documentation pages: 145
- Categories: 13
## Docs
@@ -63,7 +63,9 @@ Docs: Smart Contracts
- [Smart Contracts Cookbook Index](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-cookbook.md): Explore our full collection of tutorials and guides to learn step-by-step how to build, deploy, and work with smart contracts on Polkadot.
- [Use Hardhat with Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-hardhat-get-started.md): Overview of Hardhat, a powerful development environment for creating, compiling, testing, and deploying smart contracts on Polkadot Hub.
- [Local Development Node](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-local-dev-node.md): Follow this step-by-step guide to install a Revive Dev node and ETH-RPC adapter for smart contract development in a local environment.
-- [Use the Polkadot Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-get-started.md): Explore the smart contract development and deployment process on Asset Hub using Remix IDE, a visual IDE for blockchain developers.
+- [Deploy Contracts Using Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-deploy-a-contract.md): Learn how to deploy smart contracts to the Polkadot Hub network and interact with them using the Remix IDE and wallet providers, covering deployment and state.
+- [Use the Remix IDE on Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-get-started.md): Explore the smart contract development and deployment process on Polkadot Hub using Remix IDE, a visual IDE for blockchain developers.
+- [Troubleshooting Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md): Common issues related to developing, compiling, and deploying smart contracts using Remix IDE on Polkadot Hub paired with troubleshooting suggestions.
- [Block Explorers](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-explorers.md): Access PolkaVM explorers like Subscan, BlockScout, and Routescan to track transactions, analyze contracts, and view on-chain data from smart contracts.
- [Faucet](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-faucet.md): Learn how to obtain test tokens from Polkadot faucets for development and testing purposes across different networks.
- [Contract Deployment](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-for-eth-devs-contract-deployment.md): Compare deployment flows for REVM and PVM-based smart contracts on the Polkadot Hub. Includes single-step REVM flows and PVM’s two-step deployment model.
@@ -180,7 +182,9 @@ Docs: Tooling
- [Zero to Hero Smart Contract DApp](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-cookbook-dapps-zero-to-hero.md): Learn how to build a decentralized application on Polkadot Hub using Viem and Next.js by creating a simple dApp that interacts with a smart contract.
- [Deploying Uniswap V2 on Polkadot](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-cookbook-eth-dapps-uniswap-v2.md): Learn how to deploy and test Uniswap V2 on Polkadot Hub using Hardhat, bringing AMM-based token swaps to the Polkadot ecosystem.
- [Use Hardhat with Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-hardhat-get-started.md): Overview of Hardhat, a powerful development environment for creating, compiling, testing, and deploying smart contracts on Polkadot Hub.
-- [Use the Polkadot Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-get-started.md): Explore the smart contract development and deployment process on Asset Hub using Remix IDE, a visual IDE for blockchain developers.
+- [Deploy Contracts Using Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-deploy-a-contract.md): Learn how to deploy smart contracts to the Polkadot Hub network and interact with them using the Remix IDE and wallet providers, covering deployment and state.
+- [Use the Remix IDE on Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-get-started.md): Explore the smart contract development and deployment process on Polkadot Hub using Remix IDE, a visual IDE for blockchain developers.
+- [Troubleshooting Remix IDE](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting-faq.md): Common issues related to developing, compiling, and deploying smart contracts using Remix IDE on Polkadot Hub paired with troubleshooting suggestions.
- [Block Explorers](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-explorers.md): Access PolkaVM explorers like Subscan, BlockScout, and Routescan to track transactions, analyze contracts, and view on-chain data from smart contracts.
- [Wallets for Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-integrations-wallets.md): Comprehensive guide to connecting and managing wallets for Polkadot Hub, covering step-by-step instructions for interacting with the ecosystem.
- [Deploy Contracts to Polkadot Hub with Ethers.js](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-libraries-ethers-js.md): Learn how to interact with Polkadot Hub using Ethers.js, from compiling and deploying Solidity contracts to interacting with deployed smart contracts.
@@ -239,9 +243,6 @@ Docs: Uncategorized
- [smart-contracts-dev-environments-hardhat-install-and-config](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-hardhat-install-and-config.md): No description available.
- [smart-contracts-dev-environments-hardhat-troubleshooting](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-hardhat-troubleshooting.md): No description available.
- [smart-contracts-dev-environments-hardhat-verify-a-contract](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-hardhat-verify-a-contract.md): No description available.
-- [smart-contracts-dev-environments-remix-deploy-a-contract](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-deploy-a-contract.md): No description available.
-- [smart-contracts-dev-environments-remix-troubleshooting](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-troubleshooting.md): No description available.
-- [smart-contracts-dev-environments-remix-verify-a-contract](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-dev-environments-remix-verify-a-contract.md): No description available.
- [Gas Model on the Polkadot Hub](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-for-eth-devs-gas-model.md): Learn how gas estimation, pricing, and weight mapping work in the Polkadot Hub.
- [smart-contracts-integrations-indexers](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-integrations-indexers.md): No description available.
- [smart-contracts-integrations-oracles](https://raw.githubusercontent.com/polkadot-developers/polkadot-docs/master/.ai/pages/smart-contracts-integrations-oracles.md): No description available.
diff --git a/smart-contracts/dev-environments/remix/.nav.yml b/smart-contracts/dev-environments/remix/.nav.yml
index cb1e129a8..5d8fdf4cf 100644
--- a/smart-contracts/dev-environments/remix/.nav.yml
+++ b/smart-contracts/dev-environments/remix/.nav.yml
@@ -1,5 +1,5 @@
nav:
- 'Get Started': get-started.md
- 'Deploy a Contract': deploy-a-contract.md
- - 'Verify a Contract': verify-a-contract.md
- - 'Troubleshooting': troubleshooting.md
+# - 'Verify a Contract': verify-a-contract.md # TODO: Add this once the feature is available
+ - 'Troubleshooting': troubleshooting-faq.md
diff --git a/smart-contracts/dev-environments/remix/deploy-a-contract.md b/smart-contracts/dev-environments/remix/deploy-a-contract.md
index 30404ce4c..2b5255f5d 100644
--- a/smart-contracts/dev-environments/remix/deploy-a-contract.md
+++ b/smart-contracts/dev-environments/remix/deploy-a-contract.md
@@ -1 +1,88 @@
-TODO
\ No newline at end of file
+---
+title: Deploy Contracts Using Remix IDE
+description: Learn how to deploy smart contracts to the Polkadot Hub network and interact with them using the Remix IDE and wallet providers, covering deployment and state.
+categories: Smart Contracts, Tooling
+---
+
+# Deploy Smart Contracts Using Remix IDE
+
+## Overview
+
+After compiling your smart contract in Remix IDE, the next step is to deploy it to the Polkadot Hub network. This guide will walk you through the deployment process using a wallet provider and show you how to interact with your deployed contracts directly from the Remix interface.
+
+## Prerequisites
+
+Before deploying your contract, ensure you have:
+
+- Completed the [Remix IDE setup](/smart-contracts/dev-environments/remix/get-started/){target=\_blank} and have a compiled contract ready.
+- A compatible wallet extension installed (e.g., [MetaMask](https://metamask.io/){target=\_blank} or [Talisman](https://www.talisman.xyz/){target=\_blank}).
+- Your wallet connected to the Polkadot Hub network. Check the [Connect to Polkadot](/smart-contracts/connect/){target=\_blank} guide for more information.
+- Test tokens in your wallet to cover deployment and transaction fees (available from the [Polkadot faucet](/smart-contracts/faucet/){target=\_blank}).
+
+## Deploy Contracts
+
+The steps to use Remix IDE to deploy a contract to Polkadot Hub are as follows:
+
+1. Navigate to [Remix](https://remix.ethereum.org/){target=\_blank} in your web browser.
+2. Locate the **Deploy & Run Transactions** tab.
+3. Select the **Environment** dropdown.
+4. Select **Browser Extension**.
+5. Select the **Injected Provider - MetaMask** option.
+6. Click the **Deploy** button and then click **Confirm** in the wallet popup.
+
+Once your contract is deployed successfully, you will see the deployment confirmation in the Remix terminal.
+
+
+
+## Interact with Contracts
+
+Deployed contracts appear in the **Deployed/Unpinned Contracts** section. Follow these steps to interact with the deployed contract:
+
+1. Expand the contract to view available methods.
+
+ !!! tip
+ Pin your frequently used contracts to the **Pinned Contracts** section for easy access.
+
+2. Select any of the exposed methods to interact with the contract.
+
+ You can use these methods to interact with your deployed contract by reading or writing to its state. Remix IDE uses a color-coding scheme for method buttons to help differentiate between types of available methods as follows:
+
+ - **Blue buttons**: indicate `view` or `pure` functions which read state only. Interactions do not create a new transaction and do not incur gas fees.
+ - **Orange buttons**: label `non-payable` functions which change contract state but don't accept any value (ETH or other tokens) being sent with the transaction.
+ - **Red buttons**: designate `payable` functions which create a transaction and can accept a value (ETH or other tokens) to send with the transaction.
+
+If you deployed the `Counter.sol` contract from [Remix IDE setup](/smart-contracts/dev-environments/remix/get-started/){target=\_blank}, you can try interacting with the exposed methods as follows:
+
+1. Select the **GetCount** button to read the current count value.
+
+2. Select the **Increment** button to increment the count value.
+
+3. Submit the transaction and click the **Confirm** button in the wallet pop-up.
+
+Once the transaction is confirmed, you will see the updated count value in the Remix terminal.
+
+
+
+## Where to Go Next
+
+You've successfully deployed and interacted with your smart contract on Polkadot Hub using Remix IDE. Continue enhancing your development workflow with these resources:
+
+
+
+
+
+- Guide __Troubleshooting__
+
+ ---
+
+ Find solutions to common issues when working with Remix IDE.
+
+ [:octicons-arrow-right-24: Get Started](/smart-contracts/dev-environments/remix/troubleshooting-faq/)
+
+
\ No newline at end of file
diff --git a/smart-contracts/dev-environments/remix/get-started.md b/smart-contracts/dev-environments/remix/get-started.md
index 8c8478f0f..247c526cc 100644
--- a/smart-contracts/dev-environments/remix/get-started.md
+++ b/smart-contracts/dev-environments/remix/get-started.md
@@ -1,167 +1,87 @@
---
-title: Use the Polkadot Remix IDE
-description: Explore the smart contract development and deployment process on Asset Hub using Remix IDE, a visual IDE for blockchain developers.
+title: Use the Remix IDE on Polkadot Hub
+description: Explore the smart contract development and deployment process on Polkadot Hub using Remix IDE, a visual IDE for blockchain developers.
categories: Smart Contracts, Tooling
---
# Remix IDE
---8<-- 'text/smart-contracts/polkaVM-warning.md'
+## Introduction
-
-- :octicons-code-16:{ .lg .middle } __Deploy NFTs Using Remix IDE__
-
- ---
-
- Mint your NFT on Polkadot's Asset Hub. Use PolkaVM and OpenZeppelin to bring your digital asset to life with Polkadot Remix IDE.
-
-
- [:octicons-arrow-right-24: Get Started](/smart-contracts/cookbook/smart-contracts/deploy-nft/remix/){target=\_blank}
-
-- :octicons-code-16:{ .lg .middle } __Deploy ERC20s Using Remix IDE__
-
- ---
-
- Mint your custom ERC-20 token on Polkadot's Asset Hub. Leverage PolkaVM and Polkadot Remix IDE to bring your blockchain project to life.
-
-
- [:octicons-arrow-right-24: Get Started](/smart-contracts/cookbook/smart-contracts/deploy-erc20/remix/){target=\_blank}
-
-
-!!! warning
- The Polkadot Remix IDE's contract compilation functionality is currently limited to Google Chrome. Alternative browsers are not recommended for this task.
-
-## Overview
-
-Remix IDE is a robust browser-based development environment for smart contracts. This guide will walk you through the essentials of the [Polkadot Remix IDE](https://remix.polkadot.io/){target=\_blank} to understand the processes of compiling, developing, and deploying smart contracts on Asset Hub.
+Remix IDE is a robust browser-based development environment for smart contracts. This guide will walk you through the essentials of the [Remix IDE](https://remix.ethereum.org/){target=\_blank} to understand the processes of compiling, developing, and deploying smart contracts on Polkadot Hub.
## Prerequisites
Before getting started, ensure you have:
-- A web browser with [Talisman](https://talisman.xyz/){target=\_blank} extension installed.
+- A web browser with the [MetaMask](https://metamask.io/){target=\_blank} extension installed.
- Basic understanding of Solidity programming.
-- Some WND test tokens to cover transaction fees (easily obtainable from the [Polkadot faucet](https://faucet.polkadot.io/westend?parachain=1000){target=\_blank}).
+- Some test tokens to cover transaction fees (easily obtainable from the [Polkadot faucet](/smart-contracts/faucet/){target=\_blank}).
-## Accessing Remix IDE
+## Access Remix IDE
-Navigate to [https://remix.polkadot.io/](https://remix.polkadot.io/){target=\_blank}. The interface will load with a default workspace containing sample contracts.
+Navigate to [https://remix.ethereum.org/](https://remix.ethereum.org/){target=\_blank}. The interface will load with a default workspace containing sample contracts.

-In this interface, you can access a file explorer, edit your code, interact with various plugins for development, and use a terminal.
+In this interface, you can access a file explorer, edit your code, interact with various development plugins, and use a terminal.
-## Creating a New Contract
+## Create a New Contract
-To create a new contract using the Polkadot Remix IDE, you can follow these steps:
+To create a new contract using the Remix IDE, you can follow these steps:
1. Select the **Create a new file** button in the `contracts` folder.
- 
-
2. Name your file with a `.sol` extension, in this case, `Counter.sol`.
- 
+3. Write your Solidity code in the editor. You can use the following code as an example:
-3. Write your Solidity code in the editor.
-
- You can use the following code as an example:
-
- ???- "Counter.sol"
+ ??? code "Counter.sol"
```solidity
--8<-- 'code/smart-contracts/dev-environments/remix/get-started/Counter.sol'
```
- 
+ 
-## Compiling Your Contract
+## Compile Your Contract
-1. To compile your contract, you need to:
+To compile your contract, you need to:
- 1. Navigate to the **Solidity Compiler** tab (third icon in the left sidebar).
- 2. Select **Compile** or use `Ctrl+S`.
+1. Navigate to the **Solidity Compiler** tab.
+2. Select **Compile** or use `Ctrl+S`.
- 
-
- !!! note
- Compilation errors and warnings appear in the terminal panel at the bottom of the screen.
+ !!! note
+ Compilation errors and warnings appear in the terminal panel at the bottom of the screen.
-1. After compiling your contract, you can navigate to the **File Explorer** tab (first icon in the left sidebar) and check that:
- 1. The `artifact` folder is present.
+3. After compiling your contract, you can navigate to the **File Explorer** tab and check that:
+ 1. The **artifacts** folder is present.
2. The `Counter_metadata.json` and the `Counter.json` files have been generated.
- 
-
-## Deploying Contracts
-
-1. To deploy your contract, you need to:
-
- 1. Navigate to the **Deploy & Run Transactions** tab (fourth icon in the left sidebar).
- 2. Click the **Environment** dropdown.
- 3. Select **Customize this list**.
-
- 
-
-2. Enable the **Injected Provider - Talisman** option.
-
- 
-
-4. Click again the **Environment** dropdown and select **Injected Provider - Talisman**.
-
- 
-
-4. Click the **Deploy** button and then click **Approve** in the Talisman wallet popup.
-
- 
-
-5. Once your contract is deployed successfully, you will see the following output in the Remix terminal:
-
- 
-
-## Interacting with Contracts
-
-Once deployed, your contract appears in the **Deployed/Unpinned Contracts** section:
-
-1. Expand the contract to view available methods.
-
- 
-
- !!! tip
- Pin your frequently used contracts to the **Pinned Contracts** section for easy access.
-
-2. To interact with the contract, you can select any of the exposed methods.
-
- 
-
- In this way, you can interact with your deployed contract by reading its state or writing to it. The button color indicates the type of interaction available:
-
- - **Red**: Modifies state and is payable.
- - **Orange**: Modifies state only.
- - **Blue**: Reads state.
+ 
## Where to Go Next
-The Polkadot Remix IDE offers an environment for developing, compiling, and deploying smart contracts on Asset Hub. Its intuitive interface allows developers to easily write Solidity code, compile contracts, and interact with them directly in the browser.
+Remix offers an environment for developing, compiling, and deploying smart contracts on Polkadot Hub. Its intuitive interface allows developers to easily write Solidity code, compile contracts, and interact with them directly in the browser.
Explore more about smart contracts through these resources:
-- Guide __Smart Contracts on Polkadot__
+- Guide __Deploy a Contract__
---
- Dive into advanced smart contract concepts.
+ Learn how to deploy smart contracts using Remix IDE.
- [:octicons-arrow-right-24: Get Started](/smart-contracts/)
+ [:octicons-arrow-right-24: Get Started](/smart-contracts/dev-environments/remix/deploy-a-contract/)
- External __OpenZeppelin Contracts__
---
- Test your skills by deploying a simple contracts with prebuilt templates.
+ Test your skills by deploying simple contracts using prebuilt templates.
[:octicons-arrow-right-24: Get Started](https://www.openzeppelin.com/solidity-contracts){target=\_blank}
diff --git a/smart-contracts/dev-environments/remix/troubleshooting-faq.md b/smart-contracts/dev-environments/remix/troubleshooting-faq.md
new file mode 100644
index 000000000..44ce3f29d
--- /dev/null
+++ b/smart-contracts/dev-environments/remix/troubleshooting-faq.md
@@ -0,0 +1,155 @@
+---
+title: Troubleshooting Remix IDE
+description: Common issues related to developing, compiling, and deploying smart contracts using Remix IDE on Polkadot Hub paired with troubleshooting suggestions.
+categories: Smart Contracts, Tooling
+---
+
+# Remix IDE Troubleshooting
+
+This guide provides solutions to common issues you may encounter when using Remix IDE with Polkadot Hub. If you're experiencing problems with compilation, deployment, or contract interaction, you'll likely find the solution here.
+
+## Contract fails to compile or shows errors in the terminal
+
+- **Check Solidity version compatibility**:
+ - Ensure your contract's pragma statement matches the compiler version selected in the **Solidity Compiler** tab.
+ - Example: If your contract uses `pragma solidity ^0.8.0;`, select compiler version 0.8.x or higher.
+
+- **Review syntax errors**:
+ - Carefully read error messages in the terminal panel at the bottom of the screen.
+ - Common issues include missing semicolons, incorrect function visibility, or mismatched brackets.
+
+- **Clear cache and recompile**:
+ - Delete the `artifacts` folder in the **File Explorer**.
+ - Try compiling again with `Ctrl+S` or click the **Compile** button.
+
+## The `artifacts` folder doesn't appear after compilation
+
+- Ensure compilation completed successfully without errors.
+- Refresh the **File Explorer** by clicking away and back to the **File Explorer** tab.
+- Check that your `.sol` file is saved before compiling.
+
+## Remix doesn't detect your wallet extension (MetaMask, Talisman, etc.)
+
+- **Verify wallet installation**:
+ - Ensure your wallet extension is properly installed and enabled in your browser.
+ - Check that the extension icon appears in your browser toolbar.
+
+- **Refresh the page**:
+ - Reload the Remix IDE page and try reconnecting.
+
+- **Check browser permissions**:
+ - Ensure Remix has permission to interact with the wallet extension.
+ - Check your browser's extension settings.
+
+- **Use correct environment**:
+ - In the **Deploy & Run Transactions** tab, select **Browser Extension** from the **Environment** dropdown.
+ - Choose **Injected Provider - MetaMask** (works with most wallet providers).
+
+## Wallet is connected but to the wrong network
+
+1. Open your wallet extension.
+2. Switch to the Polkadot Hub network.
+3. Refresh the Remix IDE if the network change isn't detected automatically.
+4. Verify the network name and chain ID match Polkadot Hub's configuration.
+
+## Deployment fails with "insufficient funds" or similar error
+
+- **Check your balance**:
+ - Verify you have enough test tokens in your connected wallet.
+ - Visit the [Polkadot faucet](/smart-contracts/faucet/){target=\_blank} to obtain test tokens.
+
+- **Wait for faucet tokens**:
+ - Allow a few minutes for faucet transactions to complete.
+ - Refresh your wallet to see the updated balance.
+
+## Deployment transaction is rejected or fails
+
+- **Increase gas limit**:
+ - In the **Deploy & Run Transactions** tab, adjust the **Gas Limit** field.
+ - Try increasing it by 20-30% from the estimated amount.
+
+- **Check contract constructor parameters**:
+ - Ensure any required constructor parameters are provided correctly.
+ - Verify parameter types match the contract's constructor signature.
+
+- **Verify contract selection**:
+ - Ensure you've selected the correct contract from the **Contract** dropdown.
+ - If you have multiple contracts, make sure you're deploying the intended one.
+
+## The "Injected Provider - MetaMask" option doesn't appear in the Environment dropdown
+
+- Select **Browser Extension** from the **Environment** dropdown to populate the **Injected Provider - Metamask** option.
+- Ensure your wallet extension is unlocked and active.
+- Try disabling and re-enabling the wallet extension.
+- Refresh the Remix IDE page.
+
+## Wallet rejects transactions when trying to interact with deployed contracts
+
+- **Check wallet unlock status**:
+ - Ensure your wallet is unlocked.
+ - Verify you're approving the transaction in the wallet pop-up.
+
+- **Verify sufficient gas**:
+ - Ensure you have enough tokens to cover the transaction fee.
+ - The wallet pop-up should show the estimated gas cost.
+
+- **Network mismatch**:
+ - Confirm your wallet is still connected to Polkadot Hub.
+ - Check that Remix is using the same network.
+
+## Deployed contract doesn't show in the **Deployed/Unpinned Contracts** section
+
+- Wait for the transaction to be confirmed on-chain.
+- Check the Remix terminal for deployment confirmation.
+- Scroll down in the **Deploy & Run Transactions** panel to find the deployed contracts section.
+- If the deployment transaction failed, check the terminal for error messages.
+
+## Blue buttons (read functions) don't display return values
+
+- **Check the terminal**:
+ - Return values appear in the terminal panel at the bottom.
+ - Look for the decoded output section.
+
+- **Verify contract state**:
+ - Ensure the contract has been properly initialized.
+ - Check if the function requires a specific contract state to return values.
+
+- **Network connection**:
+ - Verify you're still connected to the correct network.
+ - Try refreshing the connection to your wallet.
+
+
+## Orange/red buttons (write functions) execute, but the state doesn't change
+
+- **Wait for transaction confirmation**:
+ - Transactions need to be mined before state changes are reflected.
+ - Check the terminal for transaction status.
+ - Wait a few seconds and try rereading the state.
+
+- **Transaction failed**:
+ - Check if the transaction was actually successful in the terminal.
+ - Look for revert reasons or error messages.
+ - Verify you approved the transaction in your wallet.
+
+- **Check transaction parameters**:
+ - Ensure you're passing the correct parameters to the function.
+ - For payable functions (red buttons), verify you're sending the correct amount.
+
+## Remix takes a long time to load or becomes unresponsive
+
+- **Clear browser cache**:
+ - Clear your browser's cache and cookies.
+ - Restart your browser.
+
+- **Disable unnecessary plugins**:
+ - In Remix, deactivate plugins you're not using via the Plugin Manager.
+
+- **Use a supported browser**:
+ - Use Chrome, Firefox, or Brave for the best compatibility.
+ - Ensure your browser is up to date.
+
+## Changes to files or folders don't appear in the File Explorer
+
+- Click the refresh icon in the **File Explorer**.
+- Switch to a different tab and back to **File Explorer**.
+- Save your work and reload the Remix IDE page.
\ No newline at end of file
diff --git a/smart-contracts/dev-environments/remix/troubleshooting.md b/smart-contracts/dev-environments/remix/troubleshooting.md
deleted file mode 100644
index 30404ce4c..000000000
--- a/smart-contracts/dev-environments/remix/troubleshooting.md
+++ /dev/null
@@ -1 +0,0 @@
-TODO
\ No newline at end of file
diff --git a/smart-contracts/dev-environments/remix/verify-a-contract.md b/smart-contracts/dev-environments/remix/verify-a-contract.md
deleted file mode 100644
index 30404ce4c..000000000
--- a/smart-contracts/dev-environments/remix/verify-a-contract.md
+++ /dev/null
@@ -1 +0,0 @@
-TODO
\ No newline at end of file