Быстрый старт для разработчиков

Со Scroll ваши любимые инструменты для создания и тестирования смарт-контрактов будут также доступны.

Поскольку Scroll эквивалентен байткоду EVM, вам потребуется просто настроить ваши любимые инструменты для создания контрактов на RPC провайдере Scroll Alpha Testnet.

Если у вас возникнут какие-либо проблемы, пожалуйста, свяжитесь с нами в Discord.

Получение тестового ETH

Чтобы начать строить на Scroll, вам сначала необходимо приобрести некоторое количество тестовых токенов ETH. Рекомендации по получению тестовых токенов в сети Goerli см. на странице Кран. После этого вы можете перевести свои тестовые ETH в тестовую сеть Scroll Alpha Testnet (Layer 2) с помощью нашего моста. Для получения подробной информации начните со страницы "Настройка" Руководства пользователя.

Настройки сети

Используйте приведенную ниже таблицу для настройки вашего Ethereum-инструментария для работы со Scroll Alpha Testnet.

Network Name
Scroll Alpha Testnet
Goerli test network

Настройка инструментария

Hardhat

Измените файл конфигурации Hardhat hardhat.config.ts, чтобы он ссылался на публичный RPC Scroll Alpha Testnet.

...

const config: HardhatUserConfig = {
  ...
  networks: {
    scrollAlpha: {
      url: "https://alpha-rpc.scroll.io/l2" || "",
      accounts:
        process.env.PRIVATE_KEY !== undefined ? [process.env.PRIVATE_KEY] : [],
    },
  },
};

...

Foundry

Для развертывания с помощью публичного RPC Scroll Alpha Testnet выполните команду:

forge create ... --rpc-url=https://alpha-rpc.scroll.io/l2

Remix Web IDE

После компиляции контрактов самый простой способ развертывания, это использование Remix - настраиваете Metamask, а затем выбираете сеть Scroll Alpha Testnet.

Теперь на вкладке "Deploy and Run Transactions" используйте выпадающий список "Environment" и выберите "Injected Provider - MetaMask".

Подключите свой кошелек и выберите Scroll Alpha Testnet. Ваш аккаунт будет автоматически выбран в Remix, и после этого вы можете нажать "Deploy".

Truffle

Предполагая, что у вас уже настроено окружение truffle, перейдите к конфигурационному файлу Truffle, truffle.js. Убедитесь, что установили HDWalletProvider: npm install @truffle/hdwallet-provider@1.4.0

const HDWalletProvider = require("@truffle/hdwallet-provider")
...
module.exports = {
  networks: {
    scrollAlpha: {
      provider: () =>
        new HDWalletProvider(process.env.PRIVATE_KEY, "https://alpha-rpc.scroll.io/l2"),
      network_id: '*',
    },
  }
}

Brownie

Чтобы добавить Scroll Alpha Testnet, выполните следующую команду:

brownie networks add Ethereum scrollAlpha host=https://alpha-rpc.scroll.io/l2 chainid=534353

Чтобы установить данную сеть в качестве сети по умолчанию, добавьте следующее в конфигурационный файл проекта:

networks:
    default: scrollAlpha

ethers.js

Установка провайдера Scroll Alpha Testnet в скрипте ethers:

import { ethers } from 'ethers';

const provider = new ethers.providers.JsonRpcProvider(
  'https://alpha-rpc.scroll.io/l2'
);

scaffold-eth

Для развертывания с помощью Scaffold-eth вам нужно указать настройки Hardhat и React в Scroll Alpha Testnet.

Конфигурация Hardhat

В файле packages/hardhat/hardhat.config.js, вам необходимо добавить сеть и выбрать ее в качестве сети по умолчанию.

...
//
// Select the network you want to deploy to here:
//
const defaultNetwork = "scrollAlpha";
...
module.exports = {
...
	networks: {
...
          scrollAlpha: {
            url: "https://alpha-rpc.scroll.io/l2",
            accounts: {
              mnemonic: mnemonic(),
            },
          },
	}
...
}

Не забудьте также пополнить кошелек для развертывания!

Конфигурация Frontend

Чтобы настроить фронтенд, необходимо добавить Scroll Alpha Testnet в качестве сетевого параметра, а затем выбрать его по умолчанию.

Чтобы добавить сеть, изменитеpackages/react-app/src/constants.js .

...
export const NETWORKS = {
...
  scrollAlpha: {
    name: "scrollAlpha",
    color: "#e9d0b8",
    chainId: 534353,
    rpcUrl: "https://alpha-rpc.scroll.io/l2",
    blockExplorer: "https://blockscout.scroll.io",
  },
...
}

Далее в packages/react-app/src/App.jsx измените

...
/// 📡 What chain are your contracts deployed to?
const initialNetwork = NETWORKS.scrollAlpha;
...

Last updated