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` 파일)를 사용해 안전하게 관리합니다. 테스트넷 자금은 [파우셋](https://faucet.maroo.io)에서 요청합니다.
3. 컴파일 및 배포
설정이 완료되었으므로 컴파일하고 배포합니다. Hardhat의 샘플 프로젝트에는
Lock.sol 컨트랙트와 배포 스크립트가 함께 제공됩니다.# 계약 컴파일
npx hardhat compile
# 마루 테스트넷에 배포
npx hardhat run scripts/deploy.ts --network maroo_testnet