본문 바로가기

개발 환경 설정

Node.js·npm·VS Code를 준비하고 Vite로 첫 React 프로젝트를 생성해 개발 서버가 실행되는 환경을 구성합니다.

개념을 읽을 때는 대충 이해한 것 같은데 막상 시작하려니 손이 멈춘다는 순간이 자주 옵니다.

리액트 입문에서 가장 많이 막히는 지점도 바로 개발 환경 설정입니다.

설치 순서가 꼬이거나 버전이 어긋나면 첫 화면을 띄우기 전부터 오류 메시지와 씨름하게 되기 때문입니다.

그래서 이 절은 단순 설치 목록이 아니라, 왜 이 도구가 필요한지와 어디서 실수하기 쉬운지를 함께 설명합니다.

특히 명령어는 복사했는데 실행이 안 되는 상황을 줄이기 위해 확인 포인트를 단계마다 넣었습니다.

이 절의 체크포인트를 순서대로 적용하면, 최소한의 설정으로 리액트 프로젝트를 안정적으로 실행하는 기준을 확보할 수 있습니다.

도구 설치는 버전 출력과 프로젝트 실행으로 확인합니다

ENVIRONMENT CHECK

도구 설치는 버전 출력과 프로젝트 실행으로 확인합니다

Node·npm은 개발 도구와 의존성을 준비하고, 에디터는 소스를 바꾸며, 브라우저는 결과를 확인합니다. 설치 완료 화면 대신 각 단계의 실제 확인 신호를 봅니다.

버전 출력 다음에는 호환성과 실행 확인

node -v와 npm -v는 PATH에서 실행 파일을 찾았다는 신호입니다. 지원 중인 Node LTS·현재 Vite 요구사항·설치 경고를 확인한 뒤 프로젝트를 실행합니다.

Node.js LTS · 개발 도구 실행

node -v

브라우저 밖에서 Vite와 npm 스크립트를 실행합니다. 버전이 출력되고 지원 중인 LTS와 현재 Vite 요구사항을 만족하는지 확인합니다.

npm · 의존성과 스크립트

npm -v

템플릿·프로젝트 의존성을 설치하고 package.json 스크립트를 실행합니다. 새 터미널에서 버전이 출력되는지 확인합니다.

VS Code · 프로젝트 편집

code --help
또는 앱 메뉴에서 폴더 열기

프로젝트 루트를 하나의 작업 공간으로 열어 소스와 통합 터미널을 함께 사용합니다.

브라우저 · 화면과 오류 확인

터미널의 실제 Local 주소를 엽니다. React 화면을 확인하고 Console·Network에서 첫 오류를 찾습니다.

리액트 프로젝트를 개발하기 위해서는 몇 가지 필수적인 도구가 필요합니다.

크게 다음 세 가지를 준비할 것입니다.

Node.js와 npm (Node Package Manager): 자바스크립트 런타임 환경이자 패키지 관리 도구

코드 에디터 (Visual Studio Code 권장): 코드를 작성하고 편집하는 도구

웹 브라우저 (Google Chrome 권장): 개발한 웹 애플리케이션을 확인하는 도구

그럼, 하나씩 설치하고 설정해 보겠습니다.

이미 준비된 PC나 클라우드 작업 공간이라면 먼저 아래 버전 확인을 실행하세요. Node·npm이 있고 조건을 만족하면 설치 단계를 반복하지 않습니다. 브라우저와 에디터는 웹 기반 도구를 사용할 수도 있습니다. 확장 프로그램은 첫 화면 실행의 필수 조건이 아닙니다.


Node.js와 npm 설치

리액트는 웹 브라우저에서 실행되는 자바스크립트 라이브러리이지만, 리액트 개발 과정에서는 Node.js 환경이 필요합니다.

Node.js는 자바스크립트 코드를 브라우저 밖에서 실행할 수 있게 해주는 런타임 환경이며, npm(Node Package Manager)은 Node.js 생태계의 패키지(라이브러리)들을 관리해주는 도구입니다.

리액트 프로젝트를 생성하고 필요한 라이브러리들을 설치할 때 npm을 사용하게 됩니다.

설치 과정

Node.js 공식 웹사이트 접속: 웹 브라우저를 열고 Node.js 공식 웹사이트에 접속합니다.

LTS(Long Term Support) 릴리스 선택: 다운로드 페이지에서 운영체제에 맞는 현재 LTS 설치 방법을 선택합니다.

이 교재는 특정 버전 번호를 고정하지 않습니다. Node.js의 지원 상태와 Vite의 최소 요구 버전은 바뀔 수 있기 때문입니다. 설치 시점의 Node.js 릴리스 표와 Vite 시작 안내를 함께 확인하고, 두 조건을 모두 만족하는 지원 중인 LTS를 사용하세요.

현재 Vite 안내는 Node.js 20.19+ 또는 22.12+를 최소 조건으로 제시하며, 선택한 템플릿이 더 높은 버전을 요구할 수 있다고 명시합니다. 패키지 관리자가 업그레이드 경고를 표시하면 그 경고와 최신 Vite 안내를 우선합니다.

설치 프로그램 실행 및 진행: 다운로드한 설치 파일을 실행합니다.

설치 마법사가 나타나면 특별한 설정 없이 "Next(다음)" 버튼을 계속 클릭하여 기본 설정으로 설치를 완료합니다.

이 마법사 설명은 Windows 설치 파일을 기준으로 합니다. macOS/Linux 또는 관리형 작업 공간에서는 공식 다운로드 페이지의 해당 운영체제 설치 방법을 따릅니다.

중간에 "Chocolatey" 또는 "Tools for Native Modules"와 같은 추가 설치 옵션이 나타날 수 있는데, 일반적으로 체크하지 않고 진행해도 무방합니다.

설치가 완료되면 "Finish(마침)" 버튼을 클릭합니다.

설치 확인

Node.js와 npm이 제대로 설치되었는지 확인하기 위해 명령 프롬프트(Windows) 또는 터미널(macOS/Linux)을 엽니다.

  • Windows: Windows 키 + R을 누르고 cmd를 입력한 후 Enter를 누르거나, 시작 메뉴에서 명령 프롬프트를 검색하여 실행합니다.
  • macOS: Command + Space를 눌러 Spotlight를 연 후 터미널을 검색하여 실행합니다.

터미널(또는 명령 프롬프트)에 다음 명령어를 입력하고 Enter를 누릅니다.

node -v
npm -v

성공적으로 설치되었다면 두 명령 모두 점으로 구분된 버전 번호를 출력합니다. 정확한 숫자는 설치 시점과 배포판에 따라 달라지므로 예시 숫자와 비교하지 말고, 두 실행 파일이 새 터미널의 PATH에서 발견되는지와 현재 Vite 요구사항을 만족하는지를 확인하세요.


코드 에디터 설치 (Visual Studio Code)

코드를 작성하고 편집하기 위한 도구로 Visual Studio Code (VS Code)를 강력히 추천합니다.

VS Code는 마이크로소프트에서 개발한 무료 오픈소스 코드 에디터로, 가볍고 빠르며, 수많은 확장 기능(Extension)을 통해 개발 생산성을 극대화할 수 있습니다.

설치 과정

VS Code 공식 웹사이트 접속: 웹 브라우저를 열고 Visual Studio Code 공식 웹사이트에 접속합니다.

다운로드: 웹사이트 중앙의 "Download for [여러분의 운영체제]" 버튼을 클릭하여 설치 파일을 다운로드합니다.

설치 프로그램 실행 및 진행: 다운로드한 설치 파일을 실행합니다.

  • Windows: 설치 시 PATH에 추가, Code로 열기 액션 추가 등의 옵션을 모두 체크하는 것을 권장합니다. 이를 통해 편리하게 프로젝트 폴더를 VS Code로 열 수 있습니다.
  • macOS: .dmg 파일을 열어 Visual Studio Code 아이콘을 Applications 폴더로 드래그 앤 드롭합니다.
VS Code 확장 프로그램 (Extensions) 설치 (선택 사항이지만 강력 권장)

VS Code는 확장 프로그램을 통해 다양한 기능을 추가하고 개발 경험을 개선할 수 있습니다.

리액트 개발에 유용한 몇 가지 확장 프로그램을 추천합니다.

VS Code를 실행한 후, 왼쪽 사이드바의 확장(Extensions) 아이콘(네모난 블록 모양)을 클릭하거나 Ctrl+Shift+X (macOS: Cmd+Shift+X)를 눌러 확장 마켓플레이스를 엽니다.

  • ESLint: React 훅 규칙과 잠재적인 코드 오류를 편집 단계에서 확인합니다. 프로젝트의 ESLint 설정과 함께 사용하면 팀 전체가 같은 기준으로 문제를 찾을 수 있습니다.
  • Prettier - Code formatter: 코드를 일관된 스타일로 자동으로 포맷팅해줍니다. 협업 시 코드 스타일을 통일하고 가독성을 높이는 데 필수적입니다.
  • Auto Rename Tag: HTML/JSX 태그의 시작 태그를 변경하면 자동으로 닫는 태그도 변경해줍니다.
  • Material Icon Theme / vscode-icons: 파일 및 폴더 아이콘을 시각적으로 구분하기 쉽게 만들어줍니다.

확장 프로그램 검색창에 이름을 입력하고 Install(설치) 버튼을 클릭하여 설치합니다.


첫 React 프로젝트 생성하기

이제 Node.js와 VS Code가 모두 준비되었으니, 드디어 첫 번째 리액트 프로젝트를 생성해 볼 차례입니다.

현재 실무/커뮤니티에서 가장 널리 쓰이는 시작 방식 중 하나인 Vite를 사용하겠습니다.

Vite는 빠른 개발 서버와 간결한 설정을 제공해, 입문 단계에서도 복잡한 번들 설정 없이 바로 개발을 시작할 수 있도록 돕습니다.

과거에는 다른 스타터 도구를 많이 사용했지만, 현재는 초기 속도와 설정 단순성 측면에서 Vite가 학습과 실무 모두에서 유리한 선택이 되는 경우가 많습니다.

특히 빠르게 띄우고 빠르게 수정 반영하기가 중요한 입문 단계에서는, 빌드 체인 이해보다 화면-코드 피드백 루프를 짧게 가져가는 것이 학습 효율을 크게 높입니다.

다만 도구가 단순해도 Node 버전과 패키지 설치 상태가 어긋나면 실행이 실패하므로, 각 단계의 확인 명령을 반드시 함께 점검하는 습관이 중요합니다.

React 공식 문서는 새 프로덕션 앱에는 라우팅·데이터 로딩 같은 기능을 통합한 프레임워크부터 검토하라고 안내합니다. 이 절의 Vite 템플릿은 React의 기본 원리와 클라이언트 앱 구조를 직접 학습하기 위한 출발점이며, 완성된 프로덕션 아키텍처를 대신하지는 않습니다.

프로젝트 생성 과정

프로젝트를 생성할 폴더로 이동: 터미널(또는 명령 프롬프트)을 열고, 프로젝트를 생성하고 싶은 디렉터리로 이동합니다.

예를 들어, C:\Users\YourName\Documents 또는 ~/Documents와 같은 폴더에 프로젝트를 만들고 싶다면 다음과 같이 명령어를 입력합니다.

# Windows 예시
cd C:\Users\YourName\Documents

# macOS/Linux 예시
cd ~/Documents

만약 아직 해당 폴더가 없다면 mkdir my-react-projects와 같이 폴더를 생성하고 이동할 수 있습니다.

위 경로의 YourName은 자신의 계정 이름으로 바꿉니다. 공백이 있는 경로는 따옴표로 묶으세요. 프로젝트 이름을 이미 사용 중이면 기존 폴더를 덮어쓰지 않고 빈 작업 폴더와 다른 이름을 선택합니다.

Vite로 프로젝트 생성: 다음 명령어를 입력하여 my-first-react-app이라는 이름의 새로운 리액트 프로젝트를 생성합니다. (프로젝트 이름은 자유롭게 지정할 수 있습니다.)

npm create vite@latest my-first-react-app -- --template react --no-interactive
  • npm create는 프로젝트 템플릿 기반 초기화를 실행하는 명령어입니다.
  • --no-interactive는 설치·즉시 실행 선택 질문을 건너뛰어 이 절의 수동 단계를 재현 가능하게 만듭니다.
  • 따라서 생성 직후 의존성 설치(npm install)를 한 번 수행해야 합니다.

create-vite 패키지를 내려받아도 되는지 npm 자체가 묻는 승인 질문은 별도로 나타날 수 있습니다. 내려받기가 거부되거나 실패하면 그 단계의 오류를 먼저 확인하며, 생성 완료로 간주하지 않습니다.

프로젝트 폴더로 이동: 프로젝트 생성이 완료되면, 새로 생성된 프로젝트 폴더(my-first-react-app)로 이동합니다.

cd my-first-react-app

리액트 애플리케이션 실행: 이제 다음 명령어를 입력하여 개발 서버를 시작하고 리액트 애플리케이션을 실행합니다.

npm install
npm run dev

이 명령어를 실행하면 터미널에 개발 서버의 Local 주소가 표시됩니다. 기본 포트는 5173이지만 이미 사용 중이면 Vite가 다음 사용 가능한 포트를 선택할 수 있으므로, 고정 주소를 추측하지 말고 터미널에 실제로 출력된 주소를 여세요.

자동으로 열리지 않는다면 직접 브라우저에서 접속해 보세요.

Vite와 React 기본 화면이 나타나고 저장할 때마다 브라우저가 빠르게 갱신된다면, 첫 리액트 프로젝트 실행 흐름이 정상적으로 연결된 것입니다.


아래 두 그림은 방금 진행한 설치 확인, 프로젝트 생성, 개발 서버 실행 과정을 하나의 피드백 루프로 다시 묶어 보여줍니다.

명령을 외우기보다 어느 단계에서 오류가 나는지 분리해서 확인하는 용도로 읽으면 됩니다.

중단되면 모든 도구를 다시 설치하지 않습니다. 생성·설치·서버 단계는 터미널 첫 오류, 화면 단계는 Console·Network로 경계를 좁힙니다. Fast Refresh는 지원되는 변경을 반영하며 변경 종류에 따라 전체 새로고침이 필요할 수 있습니다.

React · UI와 실행의 관계

생성·설치·실행을 확인한 뒤 저장과 화면을 연결합니다

이미 준비된 Node·npm은 버전과 호환성부터 확인합니다. React 템플릿 생성 뒤 의존성을 설치하고 개발 서버의 실제 Local 주소를 엽니다. 서버 터미널과 새 작업 터미널의 위치를 구분하세요.

Vite 프로젝트 실행과 수정 피드백7노드7간선이다. 버전→템플릿→설치→서버→브라우저→수정·저장→FastRefresh→브라우저의 피드백을 유지한다. 지원되지않는변경은전체새로고침일수있고 저장마다main.jsx를 재실행하는 뜻은 아니다. 초기화단계를되풀이하는반환간선은없다.1 버전 확인node -v · npm -v현재 도구 조건 확인2 템플릿 생성react 템플릿 선택npm create vite3 의존성 설치프로젝트 루트로 이동npm install4 개발 서버npm run dev실제 Local 주소 확인5 브라우저화면 · ConsoleNetwork 첫 오류 확인6 App.jsx 수정같은 프로젝트에서코드 수정 · 저장Fast Refresh변경 모듈 반영지원되는 변경 범위
Vite 프로젝트 실행과 수정 피드백 · 모바일7노드7간선이다. 버전→템플릿→설치→서버→브라우저→수정·저장→FastRefresh→브라우저의 피드백을 유지한다. 지원되지않는변경은전체새로고침일수있고 저장마다main.jsx를 재실행하는 뜻은 아니다. 초기화단계를되풀이하는반환간선은없다. 모바일에서도 같은 연결과 분기·되돌림 대상을 유지한다.1 버전 확인node -v · npm -v현재 도구 조건 확인2 템플릿 생성react 템플릿 선택npm create vite3 의존성 설치프로젝트 루트로 이동npm install4 개발 서버npm run dev실제 Local 주소 확인5 브라우저화면 · ConsoleNetwork 첫 오류 확인6 App.jsx 수정같은 프로젝트에서코드 수정 · 저장Fast Refresh변경 모듈 반영지원되는 변경 범위저장 뒤 화면을 다시 확인

중단되면 모든 도구를 다시 설치하지 않습니다. 생성·설치·서버 단계는 터미널 첫 오류, 화면 단계는 Console·Network로 경계를 좁힙니다. Fast Refresh는 지원되는 변경을 반영하며 변경 종류에 따라 전체 새로고침이 필요할 수 있습니다.


VS Code로 프로젝트 열기

이제 실행 중인 리액트 프로젝트를 VS Code에서 열어 코드를 확인해 볼 차례입니다.

VS Code 실행: VS Code를 실행합니다.

프로젝트 폴더 열기
  • VS Code 메뉴에서 File (파일) > Open Folder (폴더 열기...)를 선택합니다.
  • 또는 터미널에서 npm run dev를 실행했던 my-first-react-app 폴더로 이동한 상태에서 다음과 같이 명령어를 입력하면 VS Code가 해당 폴더를 열면서 실행됩니다. (이 방법이 더 편리합니다.)
    code .
    (.은 현재 디렉터리를 의미합니다. macOS에서는 먼저 명령 팔레트에서 Shell Command: Install 'code' command in PATH를 실행해야 하며, Windows/Linux에서도 code를 찾지 못하면 VS Code 설치의 PATH 설정을 확인합니다.)

VS Code의 탐색기(Explorer)에서 my-first-react-app 폴더의 구조를 확인할 수 있습니다.

src 폴더 안에 있는 App.jsx 파일을 열어보면 리액트 컴포넌트 코드를 볼 수 있습니다.

이 코드를 수정하고 저장하면 Vite가 변경된 모듈을 감지합니다. create-vite의 React 템플릿에는 React Fast Refresh가 미리 구성되어 있어 지원되는 변경은 전체 페이지를 다시 불러오지 않고 빠르게 반영되며, 변경 종류에 따라 전체 새로고침이 일어날 수도 있습니다.

개발 환경을 갖출 때는 설치가 끝났다는 사실보다 저장한 코드가 개발 서버와 브라우저에 바로 반영되는 루프를 확인하는 것이 중요합니다.

현재 폴더와 실행 중인 터미널 확인하기

npm run dev는 서버가 돌아가는 동안 터미널을 계속 사용합니다. 그 터미널에 다음 명령을 이어 입력하는 대신 새 터미널을 열거나 에디터의 폴더 열기를 사용합니다. 새 터미널에서도 프로젝트 루트의 package.json이 보이는지 먼저 확인하세요. Ctrl+C로 서버를 끝내면 편집 파일은 남지만 해당 주소의 화면 제공은 중단됩니다.

혼자 오류 경계를 찾기

node와 npm 버전은 나오지만 npm run dev에서 package.json을 찾지 못한다는 오류가 났습니다. Vite 프로젝트 생성과 설치는 성공했고, 새 터미널은 프로젝트의 상위 폴더에 있습니다. Node를 다시 설치해야 하나요? 별도로 서버가 실행 중인데 화면 주소를 직접 5173으로 입력했다면 무엇부터 대조할까요?

실행 위치와 실제 주소의 풀이

첫 조건은 도구 설치가 아니라 현재 폴더 문제입니다. my-first-react-app 폴더로 이동해 package.json의 dev 스크립트가 있는 위치에서 실행합니다. 둘째 조건은 서버 터미널의 실제 Local 주소를 먼저 대조합니다. 포트가 달라졌거나 서버가 끝났는지 확인하고, 화면이 열리면 Console의 첫 오류와 Network의 실패 요청을 확인합니다. 버전 출력·프로젝트 설치·서버 실행·화면 반영은 서로 다른 확인 단계입니다.

이 루프가 잡히면 다음 절에서 src/App.jsx를 수정하며 첫 화면을 직접 바꿔볼 수 있습니다.