Skip to main content

MetaMask

On node access details, click Connect wallet to inject your Chainstack endpoint automatically. If you need to add the network manually, use:
  • Network name: Plasma Mainnet
  • RPC URL: your Chainstack HTTPS endpoint
  • Chain ID: 9745
  • Currency symbol: XPL
  • Block explorer URL: https://plasmascan.to
For the testnet, use:
  • Network name: Plasma Testnet
  • RPC URL: your Chainstack HTTPS endpoint
  • Chain ID: 9746
  • Currency symbol: XPL
  • Block explorer URL: https://testnet.plasmascan.to
Refer to node access details for your endpoint URL format and credentials.

web3.py

Build dapps using web3.py and Plasma nodes deployed with Chainstack.
  1. Install web3.py.
  2. Connect over HTTP.

HTTP

Use the HTTPProvider to connect to your node endpoint and get the latest block number.
from web3 import Web3

web3 = Web3(Web3.HTTPProvider('YOUR_CHAINSTACK_ENDPOINT'))
print(web3.eth.block_number)
where
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password
  • USERNAME — the username to your node if you use a password-protected endpoint
  • PASSWORD — the password to your node if you use a password-protected endpoint
  • HOSTNAME — the host name of your node
Plasma network IDs:
  • Mainnet: 9745
  • Testnet: 9746
See also node access details.

ethers.js

Build dapps using ethers.js and Plasma nodes deployed with Chainstack.
  1. Install ethers.js.
  2. Connect over HTTP.

HTTP

Use the JsonRpcProvider object to connect to your node endpoint and get the latest block number:
const { ethers } = require("ethers");

const provider = new ethers.JsonRpcProvider("YOUR_CHAINSTACK_ENDPOINT", {
  chainId: 9745,
  name: "plasma"
});

provider.getBlockNumber().then(console.log);
For the testnet, set chainId: 9746 instead. where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password. See also node access details.

Hardhat

Configure Hardhat to deploy contracts and interact through your Plasma nodes.
  1. Install Hardhat and create a project.
  2. Create a new environment in hardhat.config.js:
    require("@nomicfoundation/hardhat-ethers");
    ...
    module.exports = {
      solidity: "0.8.26",
      networks: {
        plasmaMainnet: {
          url: "YOUR_CHAINSTACK_ENDPOINT",
          chainId: 9745,
          accounts: ["YOUR_PRIVATE_KEY"]
        },
        plasmaTestnet: {
          url: "YOUR_CHAINSTACK_ENDPOINT_FOR_TESTNET",
          chainId: 9746,
          accounts: ["YOUR_PRIVATE_KEY"]
        }
      }
    };
    
    where
    • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS or WSS endpoint protected either with the key or password. See node access details.
    • YOUR_CHAINSTACK_ENDPOINT_FOR_TESTNET — your Plasma testnet node endpoint.
    • 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 plasmaMainnet to deploy to mainnet or --network plasmaTestnet for the testnet.
Plasma chain IDs are documented in the Plasma network reference.

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 MetaMask.
  2. In Remix IDE, navigate to the Deploy & run transactions tab. Select Injected Provider - MetaMask in Environment.
This will engage MetaMask and make Remix IDE interact with the network through a Chainstack node.

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:
forge create CONTRACT_NAME --contracts CONTRACT_PATH --private-key YOUR_PRIVATE_KEY --rpc-url YOUR_CHAINSTACK_ENDPOINT --chain-id 9745
To deploy to the testnet, switch to --rpc-url YOUR_CHAINSTACK_ENDPOINT_FOR_TESTNET --chain-id 9746. 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 mainnet node HTTPS endpoint protected either with the key or password
  • YOUR_CHAINSTACK_ENDPOINT_FOR_TESTNET — your testnet node HTTPS endpoint

Cast

Use cast to interact with the network and the deployed contracts. To get the latest block number:
cast block-number --rpc-url YOUR_CHAINSTACK_ENDPOINT --chain-id 9745
Switch to your Plasma testnet endpoint and --chain-id 9746 to target the testnet.
I