Developer Quickstart

With Blast Chain, your favorite tools for building and testing smart contracts just work.

Since Blast is bytecode equivalent with the EVM, you’ll just need to point your favorite builder tools at a Blast RPC Provider.

If you run into any issues, please send it to us via email [email protected].

Acquiring OWCT

Blast Chain uses OWCT as its native currency, which is required to pay transaction fees for deploying and interacting with the network.

To start building on Blast Chain, you can directly engage with the Blast Chain Mainnet, as there is no separate testnet environment. Ensure you have OWCT available in your wallet to cover transaction costs. You can obtain OWCT through various exchanges or from peer-to-peer transactions.

For a step-by-step guide on how to configure your environment and begin transactions, refer to the User Guide’s Setup page.

Once you’re ready to deploy on the Blast Chain Mainnet, all operations can be conducted directly within this environment. There is no need to bridge assets from another chain, simplifying the process and enhancing user convenience.

Network Configuration

Network Name
Blast Chain
One World Chain

Configure your tooling

For setting up tooling to verify a smart contract deployment, see Verifying Smart Contracts.

Hardhat

Modify your Hardhat config file hardhat.config.ts to point at the Blast Chain public RPC.


...

const config: HardhatUserConfig = {
  ...
  networks: {
    blastChain: {
      url: "https://zkevmrpc.blastchain.org/" || "",
      accounts:
        process.env.PRIVATE_KEY !== undefined ? [process.env.PRIVATE_KEY] : [],
    },
  },
};

...

Remix Web IDE

After compiling your contracts, the easiest way to deploy using Remix is by setting up Metamask, then selecting the Blast Mainnet network.

Now, in the “Deploy and Run Transactions” tab, use the “Environment” drop-down and select “Injected Provider - MetaMask.”

Connect your wallet and select the Blast Mainnet. Your account should be selected automatically in Remix, and you can click “Deploy.”

Truffle

Assuming you already have a Truffle environment setup, go to the Truffle configuration file, truffle.js. Make sure to have installed HDWalletProvider: npm install @truffle/[email protected]

const HDWalletProvider = require("@truffle/hdwallet-provider")
...
module.exports = {
  networks: {
    blastChain: {
      provider: () =>
        new HDWalletProvider(process.env.PRIVATE_KEY, "https://zkevmrpc.blastchain.org/"),
      network_id: '*',
    },
  }
}

ethers.js

Setting up a Blast Chain provider in an ethers script:

import { ethers } from "ethers"

const provider = new ethers.providers.JsonRpcProvider("https://zkevmrpc.blastchain.org/")

Configure Hardhat

In the packages/hardhat/hardhat.config.js file, you’ll add the network and select it as the default network.

...
//
// Select the network you want to deploy to here:
//
const defaultNetwork = "blastChain";
...
module.exports = {
...
  networks: {
...
          blastChain: {
            url: "https://zkevmrpc.blastchain.org/",
            accounts: {
              mnemonic: mnemonic(),
            },
          },
  }
...
}

Be sure to fund the deployment wallet as well! Run yarn generate to create the wallet and yarn account to check its funds. Once funded, run yarn deploy --network blastChain to deploy on the Blast Chain.

Last updated