Vite 앱 사용법: 설치, 구조, 설정과 활용 방법 정리
Vite란 무엇인가?
Vite는 빠르고 효율적인 개발 환경을 제공하기 위해 설계된 프론트엔드 빌드 도구입니다. 주로 React, Vue, Svelte, Vanilla JavaScript 등 다양한 프레임워크와 함께 사용됩니다. Vite는 ES 모듈 기반의 빠른 개발 서버와, Rollup 기반의 빌드 프로세스를 제공합니다.
주요 특징
- 빠른 개발 서버
- 브라우저의 네이티브 ES 모듈 기능을 활용하여 즉각적인 HMR(Hot Module Replacement)을 제공합니다.
- 빠른 빌드
- Rollup을 기반으로 최적화된 프로덕션 빌드를 생성합니다.
- 유연성
- 플러그인 시스템과 다양한 프레임워크 지원.
- 간단한 설정
vite.config.js
에서 설정을 쉽게 구성 가능.
Vite 앱 사용 방법
1. Vite 설치 및 초기화
- Node.js가 설치되어 있는지 확인하세요.
node -v npm -v
- Vite 프로젝트를 초기화합니다.
npm create vite@latest
- 원하는 프로젝트 이름을 입력합니다.
- 사용할 프레임워크를 선택합니다(React, Vue, Svelte 등).
- 디렉토리로 이동 후 의존성을 설치합니다.
cd 프로젝트명 npm install
- 개발 서버를 실행합니다.
npm run dev
2. 주요 스크립트
npm run dev
: 개발 서버 시작npm run build
: 프로덕션 빌드 생성npm run preview
: 빌드된 앱을 로컬 서버에서 미리보기
디렉토리 구조
Vite 앱의 기본 디렉토리 구조는 다음과 같습니다:
프로젝트명/
├── public/ # 정적 파일(빌드 과정 없이 배포 가능)
│ └── favicon.ico
├── src/ # 소스 코드 디렉토리
│ ├── assets/ # 이미지, 스타일 파일 등
│ ├── components/ # 재사용 가능한 컴포넌트
│ ├── App.jsx # 메인 애플리케이션 컴포넌트
│ ├── main.jsx # 진입 파일(React/Vue 초기화)
│ └── styles/ # 스타일 파일
├── index.html # 기본 HTML 파일
├── package.json # 의존성 및 npm 스크립트 정의
├── vite.config.js # Vite 설정 파일
└── README.md # 프로젝트 설명
앱 구조
Vite는 프레임워크에 따라 기본 템플릿 구조가 다릅니다. 여기서는 React 기반 Vite 앱의 구조를 설명합니다.
1. main.jsx
(진입 파일)
애플리케이션의 시작점으로 ReactDOM을 사용하여 컴포넌트를 렌더링합니다.
import React from 'react';
import ReactDOM from 'react-dom/client';
import App from './App';
import './styles/index.css';
ReactDOM.createRoot(document.getElementById('root')).render(
<React.StrictMode>
<App />
</React.StrictMode>
);
2. App.jsx
(메인 컴포넌트)
React 컴포넌트를 작성하여 UI를 정의합니다.
import React from 'react';
function App() {
return (
<div>
<h1>Welcome to Vite + React!</h1>
</div>
);
}
export default App;
3. vite.config.js
(설정 파일)
Vite의 설정을 사용자 정의할 수 있는 파일입니다.
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
export default defineConfig({
plugins: [react()],
server: {
port: 3000, // 개발 서버 포트
},
build: {
outDir: 'dist', // 빌드 결과 디렉토리
},
});
Vite 설정 및 디렉토리 확장
1. Alias 설정
@
를 사용하여 src
디렉토리를 참조할 수 있도록 설정:
export default defineConfig({
resolve: {
alias: {
'@': '/src',
},
},
});
2. 환경 변수 관리
Vite는 .env
파일을 지원하며, VITE_
로 시작하는 환경 변수를 사용할 수 있습니다.
VITE_API_URL=https://api.example.com
3. 플러그인 추가
플러그인을 사용하여 기능을 확장합니다.
- 예: SVG 파일을 컴포넌트로 사용
npm install vite-plugin-svgr
import svgr from 'vite-plugin-svgr'; export default defineConfig({ plugins: [react(), svgr()], });
Vite 사용 시 주의점
- 모듈 호환성
- 일부 CommonJS 기반 패키지는 추가 설정이 필요할 수 있습니다.
- 빌드 최적화
- 프로젝트가 커질수록 Vite의
build.optimizeDeps
설정을 활용하여 최적화를 고려해야 합니다.
- 프로젝트가 커질수록 Vite의
- 서버 사이드 렌더링(SSR)
- SSR이 필요한 경우 Vite의 SSR 가이드를 참조하세요.
Vite는 빠르고 간단한 개발 환경을 제공하며, 다양한 프로젝트에서 생산성을 크게 향상시킬 수 있는 도구입니다. 추가적으로 특정 기능이나 디렉토리 구조 확장이 필요하면 댓글로 알려주세요! 😊
Leave a comment