2 - DApp 개발 환경 셋업

2025. 2. 9. 14:12Learn/UPSIDE

728x90

Overview

 

DApp 만들기: 기본 개발 환경 셋업

Overview DApp은 어떻게 만들 수 있을까요?OverviewDApp은 기존 Web 2.0의 중앙 집중식 구조에서 벗어나, 블록체인 기반의 탈중앙화된 방식으로 동작하는 애플리케이션을 의미합니다. 본 포스트에서는

spems.tistory.com

이전 시간에는 git, GitHub, VS Code를 설치하며 기본적인 개발 환경을 구축했습니다. 이번 시간에는 본격적인 DApp 개발에 앞서, 이를 위해 필요한 도구를 설치하는 작업을 수행해봅시다.


DApp 개발 환경 셋업

1. Foundry

파운드리(Foundry)는 러스트(Rust) 언어 기반 스마트 컨트랙트 개발 도구입니다.
따라서, 먼저 Rust 컴파일러와 패키지매니저를 설치합니다.
 curl https://sh.rustup.rs -sSf | sh -s 

 

이후 아래의 명령을 차례대로 실행하세요

curl -L https://foundry.paradigm.xyz | bash
source ~/.bashrc 
foundryup
which forge && forge -V
  1. 명령  curl -L https://foundry.paradigm.xyz | bash  을 실행합니다.
    bash 셸을 사용하지 않는다면, bash를 이용 중인 셸 이름으로 변경하여 실행해주세요.
    ex) curl -L https://foundry.paradigm.xyz | sh
  2. 스크립트가 정상적으로 실행되었다면, foundry 바이너리 위치가 PATH에 등록됩니다.
    현재 터미널 세션에도 변경한 설정이 반영되도록 재시작해줍니다.
    기본 셸에 따라 파일명이 변경된 상태로 안내가 진행되니, 잘 읽고 이에 맞춰 진행하면 됩니다.
    ex) .bashrc .zshrc ... 등 설정 기반 재실행
  3.  foundryup 을 실행합니다.
  4.  which forge && forge -V 를 실행합니다.
    forge의 위치와 버전이 출력된다면 성공!

which forge && forge -V

2. Node.js

Node.js는 Chrome V8 JavaScript 엔진을 기반으로 하는 JavaScript 런타임입니다. 쉽게 말하자면, 브라우저 없이도 JavaScript 파일을 실행할 수 있게 되는 것이죠. NPM(Node Package Manager)은 이러한 Node.js의 기본 패키지 관리자로서, JavaScript 패키지의 설치, 버전 관리 및 의존성 관리를 쉽게 할 수 있도록 도와줍니다. Node.js를 설치할 때, 자동으로 함꼐 설치되니 신경쓰지 않아도 괜찮아요. 최근에는 Node 버전 관리의 편의성을 위해 NVM(Node Version Manager)를 함께 사용합니다. 필요에 따라 원하는 버전으로 쉽게 변경할 수 있도록 도와줍니다.

 

다음 공식 사이트에서 발췌한 설치 방식을 따라가봅시다. 이번에도 이전과 마찬가지로 bash 셸을 사용하지 않는다면, 자신이 사용하는 셸의 이름으로 변경해주면 됩니다.

# nvm 다운로드 및 설치:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

# Node.js 다운로드 및 설치:
nvm install 22

# Node.js 버전 확인:
node -v # "v22.13.1"가 출력되어야 합니다.
nvm current # "v22.13.1"가 출력되어야 합니다.

npm 버전 확인:
npm -v # 10.9.2가 출력되어야 합니다.
 

Node.js — Node.js® 다운로드

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org


마치며

뭘 이렇게 많이 설치해야해? 라고 생각하실 수도 있겠지만, 아직 기본적인 것도 다 다루지 못했다는 점... 😐 오히려 직접 모든 것을 개발하기보다, 이미 개발된 오픈소스 라이브러리를 잘 활용하는 능력 또한 중요하다는 것을 기억해둡시다!

 

다음 시간에는 복제한 레포에서 branch를 변경하고, 준비된 Hello, World! DApp을 로컬에서 실행해보는 실습을 진행해보겠습니다 🤗

728x90