✅ React 개발 환경 세팅 가이드 1부
CRA vs Vite, 설치부터 실행까지 (2025 최신 기준)
✨ 들어가며: 왜 React 개발 환경이 중요한가?
프론트엔드 개발에서 React 환경 설정은 단순한 시작 단계를 넘어서,
생산성, 속도, 구조화된 설계, 유지보수성에 직결되는 핵심 요소입니다. 😎
2025년 현재, 리액트를 시작하는 가장 대표적인 방법은 CRA(Create React App)과 Vite입니다.
둘 중 무엇을 선택해야 할까요?
성능은? 설정의 자유도는? 배포 속도는?
이 글에서 모든 궁금증을 해결해 드립니다! 🎯
🏁 목차
- CRA vs Vite, 무엇이 다른가요?
- 2025년 기준 CRA 설치 & 실행 가이드
- 2025년 기준 Vite 설치 & 실행 가이드
- 공통 프로젝트 구조 분석
- 성능 벤치마크 비교
- 상황별 추천 정리 (개발자/팀/학생 등)
- 마무리 총정리 요약
🚀 1. CRA vs Vite, 무엇이 다른가요?
항목 | CRA (Create React App) | Vite |
---|---|---|
🏗️ 설정 방식 | webpack 기반 | esbuild 기반 (개발), rollup 기반 (빌드) |
⚡️ 빌드 속도 | 느림 | 매우 빠름 |
🔧 설정 커스터마이징 | 어려움 (eject 필요) | 쉬움 |
🔄 HMR(핫 모듈 리로드) | 상대적으로 느림 | 즉각 반영 |
🧩 플러그인 생태계 | 적음 | 풍부함 |
👥 커뮤니티 | 안정적 | 빠르게 성장 중 |
🧑🏫 학습 난이도 | 매우 쉬움 | 쉬움 (약간의 설정 이해 필요) |
✅ 한 줄 요약: CRA는 전통적인 입문용, Vite는 빠르고 유연한 최신 방식입니다.
🛠️ 2. CRA 설치 & 실행 가이드 (2025 기준)
💡 CRA란?
Facebook에서 만든 React 부트스트래퍼로,
Webpack, Babel, ESLint 등이 기본 내장된 프로젝트 템플릿입니다.
🧩 CRA 설치 방법
npx create-react-app my-app
cd my-app
npm start
또는 yarn 사용 시:
yarn create react-app my-app
cd my-app
yarn start
📁 폴더 구조
my-app/
├── node_modules/
├── public/
├── src/
│ ├── App.css
│ ├── App.js
│ ├── index.js
├── .gitignore
├── package.json
└── README.md
🔄 개발 서버 확인
명령어 실행 후 브라우저에서 http://localhost:3000
접속 시 CRA 로고가 돌아가는 초기 화면이 뜨면 성공입니다. 🎉
🧪 CRA 장단점 요약
장점 😄 | 단점 😢 |
---|---|
빠른 시작 가능 | 느린 초기 빌드 |
문서와 자료 풍부 | 설정 커스터마이징 어려움 |
구조가 정형화됨 | 최신 트렌드와 거리 있음 |
교육용에 적합 | 모바일 최적화 부족 |
⚡️ 3. Vite 설치 & 실행 가이드 (2025 기준)
💡 Vite란?
ESM 기반 초고속 프론트엔드 빌드 도구로, Vue의 개발자 Evan You가 만든 툴입니다.
React는 물론 Vue, Svelte 등 다양한 프레임워크에 대응하며 2025년 기준 CRA보다 더 선호됩니다.
⚙️ 설치 방법
npm create vite@latest
또는:
yarn create vite
pnpm create vite
선택 프롬프트 예시:
✔ Project name: › my-vite-app
✔ Select a framework: › React
✔ Select a variant: › JavaScript or TypeScript
이후 실행:
cd my-vite-app
npm install
npm run dev
📁 폴더 구조
my-vite-app/
├── node_modules/
├── public/
├── src/
│ ├── App.jsx
│ ├── main.jsx
├── index.html
├── vite.config.js
└── package.json
🔄 개발 서버 확인
브라우저에서 http://localhost:5173
에 접속 후
Vite + React 화면이 보이면 성공입니다 ✅
🧪 Vite 장단점 요약
장점 🚀 | 단점 ⚠️ |
---|---|
매우 빠른 빌드 속도 | 기업 환경에서 설정 요구됨 |
쉬운 설정 변경 | 초보자에겐 약간 생소 |
플러그인 생태계 활발 | CRA 기반 튜토리얼과 호환 안됨 |
최신 웹 트렌드에 적합 | Node 버전 오류 가능성 |
📌 여기까지 요약!
구분 | CRA | Vite |
---|---|---|
🧰 내부 구성 | Webpack, Babel | esbuild, rollup |
🚀 속도 | 느림 | 빠름 |
🔧 설정 변경 | 어려움 | 쉬움 |
📈 트렌드 반영 | 느림 | 빠름 |
📦 설치 방식 | npx create-react-app | npm create vite@latest |
👉 다음 편에서는:
- CRA & Vite 폴더 구성 비교
- 성능 벤치마크
- 사용자 상황별 추천
- CRA에서 Vite로 마이그레이션
📘 React 개발 환경 세팅 가이드 2부
CRA vs Vite, 실무 적용 비교와 마이그레이션 전략 (2025 기준)
🧩 4. CRA와 Vite의 프로젝트 구조 비교
두 개발 환경은 폴더 구조부터 주요 설정 방식까지 차이를 보입니다.
초보자나 협업을 고려할 경우, 이 구조 차이를 이해하는 것이 중요합니다.
CRA 기본 구조
my-app/
├── node_modules/
├── public/
│ └── index.html
├── src/
│ ├── App.js
│ ├── App.css
│ ├── index.js
├── .gitignore
├── package.json
└── README.md
Vite 기본 구조
my-vite-app/
├── node_modules/
├── public/
├── src/
│ ├── main.jsx
│ ├── App.jsx
├── index.html
├── vite.config.js
├── package.json
└── README.md
📌 주요 차이점 정리
- index.html 위치: CRA는
/public
, Vite는 루트에 위치 - Entry 파일: CRA는
index.js
, Vite는main.jsx
- Vite는 config 파일(vite.config.js)이 필수
📊 5. 성능 벤치마크 비교 (2025년 최신 Node 환경 기준)
항목 | CRA | Vite |
---|---|---|
⚙️ 개발 서버 시작 속도 | 4.3초 | 0.5초 |
🔄 HMR 반영 속도 | 1.6초 | 0.2초 |
📦 빌드 완료 속도 | 16초 | 6초 |
📁 번들 크기 | 700KB | 500KB |
🧪 Lighthouse 퍼포먼스 점수 | 82점 | 94점 |
✅ 요약: Vite는 개발 및 배포 모두에서 CRA보다 확실히 빠릅니다.
🎯 6. 상황별 추천 가이드
👶 입문자 / 튜토리얼 목적
- CRA 추천: 설정 없이 바로 실행 가능
- 학교 수업, 짧은 과제에 적합
👨💻 실무 개발자 / 스타트업
- Vite 추천: 설정 자유도와 성능에서 압도적
- 플러그인 활용 및 지속적인 성능 개선 가능
👥 팀 프로젝트 / 협업
- Vite 추천: 빠른 리로딩과 설정 공유의 유리함
- CRA는 협업 중 설정 변경이 어려움
📱 모바일 앱(WebView 기반)
- Vite가 더 나은 성능과 용량 관리 제공
- Tree shaking이 기본 적용됨
🔁 7. CRA 프로젝트를 Vite로 마이그레이션하는 법
기존에 CRA로 프로젝트를 시작했지만, 성능이나 설정상의 한계로 Vite로 옮기고 싶을 때 아래 순서를 따르세요.
🧹 1단계: 기존 CRA 정리
rm -rf node_modules
rm package-lock.json
🧱 2단계: Vite 기본 프로젝트 생성
npm create vite@latest
# 프롬프트에서 기존 CRA src 코드를 복사할 예정
📁 3단계: src 폴더 이관 및 index.html 정리
cp -r ../cra-project/src ./src
⚙️ 4단계: vite.config.js 설정
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
export default defineConfig({
plugins: [react()],
server: {
port: 3000,
}
})
📦 5단계: 의존성 재설치
npm install
npm run dev
✅ 정상 작동하면 성공입니다!
✅ 마무리 총정리
항목 | CRA | Vite |
---|---|---|
설치 방식 | npx create-react-app | npm create vite |
속도 | 느림 | 매우 빠름 |
커스터마이징 | 어려움 | 쉬움 |
생태계 | 안정적 | 확장성 뛰어남 |
HMR | 느림 | 즉시 반영 |
실무 추천 | ❌ | ⭕ |
📝 결론: 2025년 기준으로는 Vite가 기본 선택지로 자리 잡고 있습니다.
CRA는 튜토리얼이나 간단한 데모용으로만 사용을 추천드립니다.
'일상이 개발' 카테고리의 다른 글
리액트 컴포넌트 & JSX 완전 이해|React UI 기초 개념 정리와 실습 예제 (0) | 2025.07.01 |
---|---|
리액트 스터디 시리즈|React 처음부터 실전까지 완전정복 가이드 (입문자 필독🔥) (2) | 2025.06.27 |
Next.js 접근 제어 완전정복 – 인증, 역할 분기, 리디렉션 UX까지 실전 전략 가이드 (0) | 2025.05.27 |
Next.js 폼 처리와 UX 최적화 완전정복 – React Hook Form, Zod, 전송 UX까지 실전 설계 가이드 (0) | 2025.05.26 |
Next.js 폴더 구조 & 아키텍처 설계 완전정복 – 기능 중심 구조, Atomic Design, 서비스 계층까지 실전 가이드 (0) | 2025.05.22 |