Initialize Your Project

If you're starting your Hardhat project from scratch, we recommend you read the Hardhat Quick Start page.

Setting up Your Account​

The quickest way to get Hardhat to deploy contracts to a non-local TestNet, is to export and use an existing MetaMask account.

To get an account's private key from MetaMask:

  1. Open MetaMask.

  2. Select the account you want to export.

  3. Click the three dots on the right side.

  4. Select "Account Details".

  5. Select "Export Private Key".

  6. Enter your password and select "Confirm".

You should see a 64-character hex string similar to the following:


Create a new file in your root folder called private.json with your private key in it:

  "privateKey": "60ed0dd24087f00faea4e2b556c74ebfa2f0e705f8169733b01530ce4c619883"

Modify your hardhat.config.js file to include:

// hardhat.config.js

// ...

const { privateKey } = require("./private.json");

// ...

module.exports = {
  // ...

  networks: {
    // Lumia faucet: https://testnet-faucet.lumia.org
    lumia-testnet: {
      url: "https://testnet-rpc.lumia.org",
      chainId: 1952959480,
      accounts: [privateKey],

    // ...

Once your accounts are funded, you can deploy the sample contract to Lumia Testnet with npx hardhat run --network lumia-testnet scripts/deploy.js.

Last updated