Get started with a reliable Fantom RPC endpoint to use the tools below.
Node.js
You can build a web app to query data using Node.js and axios:
where
- YOUR_CHAINSTACK_ENDPOINT — your node GraphQL endpoint
- QUERY — your GraphQL query
See also node access details.
See also Using GraphQL with EVM-compatible nodes.
On node access details, click Connect wallet.
Hardhat
Configure Hardhat to deploy contracts and interact through your Fantom nodes.
-
Install Hardhat and create a project.
-
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
-
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:
-
Get MetaMask and set it to interact through a Chainstack node. See Interacting through MetaMask.
-
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 Fantom nodes deployed with Chainstack.
-
Install web3.py.
-
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 Fantom nodes deployed with Chainstack.
-
Install web3.php.
-
Connect over HTTP:
where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password
-
Use JSON-RPC methods to interact with the node.
Example to get the latest block number:
web3j
Build DApps using web3j and Fantom 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 Fantom nodes deployed with Chainstack.
-
Install ethers.js.
-
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 — Fantom network ID:
- Mainnet:
250
- Testnet:
4002
See 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 — Fantom network ID:
- Mainnet:
250
- Testnet:
4002
See also node access details.
Brownie
-
Install Brownie.
-
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 — Fantom network ID:
- Mainnet:
250
- Testnet:
4002
Example to run the deployment script:
Foundry
-
Install Foundry.
-
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