Skip to main content

MetaMask

On node access details, click Connect wallet.

Hardhat

Configure Hardhat to deploy contracts and interact through your Harmony nodes.
  1. Install Hardhat and create a project.
  2. Create a new environment in hardhat.config.js:
    where
    • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS or WSS endpoint protected either with the key or password. See node access details.
    • YOUR_PRIVATE_KEY — the private key of the account that you use to deploy the contract
  3. Run npx hardhat run scripts/deploy.js --network chainstack and Hardhat will deploy using Chainstack.
See also Forking EVM-compatible mainnet with Hardhat.

Remix IDE

To make Remix IDE interact with the network through a Chainstack node:
  1. Get MetaMask and set it to interact through a Chainstack node. See Interacting through MetaMask.
  2. In Remix IDE, navigate to the Deploy tab. Select Injected Provider - MetaMask in Environment.
This will engage MetaMask and make Remix IDE interact with the network through a Chainstack node.

web3.py

Build DApps using web3.py and Harmony nodes deployed with Chainstack.
  1. Install web3.py.
  2. Connect over HTTP or WebSocket. See also EVM node connection: HTTP vs WebSocket.

HTTP

Use the HTTPProvider to connect to your node endpoint and get the latest block number.
where
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password
  • HOSTNAME — your node HTTPS endpoint hostname
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
See also node access details.

WebSocket

Use the WebsocketProvider object to connect to your node WSS endpoint and get the latest block number.
where
  • YOUR_CHAINSTACK_ENDPOINT — your node WSS endpoint protected either with the key or password
  • HOSTNAME — your node WSS endpoint hostname
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
See also WebSocket connection to an EVM node.

web3.php

Build DApps using web3.php and Harmony nodes deployed with Chainstack.
  1. Install web3.php.
  2. Connect over HTTP:
  3. Use JSON-RPC methods to interact with the node. Example to get the latest block number:

web3j

Build DApps using web3j and Harmony nodes deployed with Chainstack. Use the HttpService object to connect to your node endpoint. Example to get the latest block number:
where
  • ENDPOINT — your node HTTPS endpoint
  • USERNAME — your node access username
  • PASSWORD — your node access password
See also the full code on GitHub.

ethers.js

Build DApps using ethers.js and Harmony nodes deployed with Chainstack.
1
Install ethers.js.
2
Connect over HTTP or WebSocket. See also EVM node connection: HTTP vs WebSocket.

HTTP

Use the JsonRpcProvider object to connect to your node endpoint and get the latest block number:
where
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
  • NETWORK_ID — Harmony network ID:
    • Mainnet Shard 0: 1666600000
    • Devnet Shard 0: 1666900000
See also node access details.

WebSocket

Use the WebSocketProvider object to connect to your node WSS endpoint and get the latest block number:
where
  • YOUR_CHAINSTACK_ENDPOINT — your node WSS endpoint endpoint protected either with the key or password
  • NETWORK_ID — Harmony network ID:
    • Mainnet Shard 0: 1666600000
    • Devnet Shard 0: 1666900000
See also node access details.

Brownie

1
Install Brownie.
2
Use the brownie networks add command with the node endpoint:
where
  • ID — any name that you will use as the network tag to run a deployment. For example, chainstack-mainnet.
  • NETWORK_NAME — any name that you want to identify the network by in the list of networks. For example, Mainnet (Chainstack).
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS or WSS endpoint protected either with the key or password
  • NETWORK_ID — Harmony network ID:
    • Mainnet Shard 0: 1666600000
    • Devnet Shard 0: 1666900000
Example to run the deployment script:

Foundry

1
Install Foundry.
2
Use --rpc-url to run the operation through your Chainstack node.

Forge

Use forge to develop, test, and deploy your smart contracts. To deploy a contract:
where
  • CONTRACT_NAME — name of the contract in the Solidity source code
  • CONTRACT_PATH — path to your smart contract
  • YOUR_PRIVATE_KEY — the private key to your funded account that you will use to deploy the contract
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password

Cast

Use cast to interact with the network and the deployed contracts. To get the latest block number:
where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password
Last modified on June 25, 2026