Hardhat 개발 환경 설정하기

quickstart beginner

마루 네트워크에서 스마트 컨트랙트를 컴파일, 테스트, 배포하기 위해 Hardhat 프로젝트를 구성하는 단계별 가이드입니다.

마루는 EVM 호환이라 표준 Hardhat 프로젝트가 마루 전용 패치 없이 그대로 동작합니다. 이 가이드는 마루 테스트넷을 가리키는 새 Hardhat 프로젝트를 만드는 과정을 다룹니다.

사전 요구사항

  • Node.js (18+)
  • 실행 중인 로컬 마루 테스트넷 또는 공개 테스트넷 접근 권한.

1. Hardhat 프로젝트 초기화

먼저 새 프로젝트 디렉토리를 만들고 그 안에 샘플 Hardhat 프로젝트를 초기화합니다.
mkdir maroo-project
cd maroo-project
npm init -y
npm install --save-dev hardhat @nomicfoundation/hardhat-toolbox

npx hardhat
참고: npx hardhat 프롬프트가 나타나면 최상의 개발 경험을 위해 'Create a TypeScript project'를 선택합니다.

2. `hardhat.config.ts` 설정

마루 테스트넷에 연결할 수 있도록 Hardhat을 설정합니다. hardhat.config.ts를 열고 네트워크 항목을 추가하며, 개인 키는 .env에서 가져옵니다(절대 커밋 금지).
import { HardhatUserConfig } from "hardhat/config";
import "@nomicfoundation/hardhat-toolbox";
import * as dotenv from 'dotenv';
dotenv.config();

const PRIVATE_KEY = process.env.PRIVATE_KEY || "";

const config: HardhatUserConfig = {
  solidity: "0.8.22",
  networks: {
    maroo_testnet: {
      url: "https://rpc-testnet.maroo.io",
      chainId: 450815, // Mainnet: 815
      accounts: PRIVATE_KEY ? [PRIVATE_KEY] : [],
    },
  },
};

export default config;
주의: 개인 키를 절대 Git에 커밋하지 마십시오. 환경 변수(.env 파일)를 사용해 안전하게 관리합니다. 테스트넷 자금은 파우셋에서 요청합니다.

3. 컴파일 및 배포

설정이 완료되었으므로 컴파일하고 배포합니다. Hardhat의 샘플 프로젝트에는 Lock.sol 컨트랙트와 배포 스크립트가 함께 제공됩니다.
# 계약 컴파일
npx hardhat compile

# 마루 테스트넷에 배포
npx hardhat run scripts/deploy.ts --network maroo_testnet

마무리

Hardhat 프로젝트가 마루 테스트넷에 연결됐습니다. 이더리움 메인넷에서 쓰던 동일한 프로젝트 구조, 플러그인, 테스트가 그대로 적용됩니다.
ESC
검색어를 입력하세요