Deploying a smart contract to AERE Network is nearly identical to deploying one to Ethereum, because AERE is fully EVM-compatible. If you've used Remix before, you already know the workflow. If you haven't, this guide will walk you through it from scratch. By the end you'll have a live, verified contract on chain ID 2800.
That's it. Remix is a browser-based IDE; nothing needs to be installed locally.
We'll deploy a simple Counter contract: it stores a number on-chain and lets anyone increment it. It's trivial by design, the goal here is to understand the deployment process, not the contract logic.
// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; contract Counter { uint256 public count; function increment() external { count += 1; } function reset() external { count = 0; } }
Open Remix. Navigate to remix.ethereum.org in the same browser where MetaMask is installed.
Create a new file. In the File Explorer panel on the left, click the "New File" icon and name it Counter.sol. Paste the contract code above into the editor.
Compile. Click the Solidity Compiler icon in the left sidebar (it looks like the Solidity logo). Make sure the compiler version is set to 0.8.20 or newer, then click "Compile Counter.sol". A green checkmark indicates success.
Switch MetaMask to AERE Network. Click the network selector in MetaMask and choose AERE Network. If you haven't added it yet, follow the guide at /blog-add-to-metamask.html first.
Open the Deploy tab in Remix. Click the "Deploy & Run Transactions" icon (an Ethereum diamond with an arrow). In the Environment dropdown, select "Injected Provider, MetaMask". Remix will read your MetaMask connection and display your AERE address and balance.
Deploy. Make sure Counter is selected in the Contract dropdown, then click the orange "Deploy" button. MetaMask will pop up a transaction confirmation. The gas cost will be a tiny fraction of a single AERE, well within what you claimed from the faucet. Click "Confirm".
Find your contract. After the transaction confirms (within 1-2 seconds on AERE), a deployed contract instance appears in the "Deployed Contracts" section at the bottom of the Deploy panel. You'll see its address and the available functions. Copy the address.
Verify on the explorer. Paste the contract address into explorer.aere.network. You'll see the deployment transaction, the contract bytecode, and, if you verify the source, the ABI and source code.
Back in Remix, expand the deployed contract. You'll see three buttons: count (a read call, free), increment, and reset. Click increment, MetaMask will ask you to confirm a transaction. After it lands, click count and you'll see the value is now 1. Congratulations: you have a live contract on AERE L1.
Once you're comfortable with Remix, the workflow extends directly to professional tooling:
chainId: 2800 and url: "https://rpc.aere.network" in your network config. Every test and deploy script works unchanged.@openzeppelin/contracts and import as normal. All standard contracts (ERC-20, ERC-721, AccessControl, etc.) compile and deploy on AERE without modification.For a deeper look at the full developer setup, visit the developer documentation. If you're building something substantial, the grants program can fund your project.
← Back to Blog