프로젝트 진행 전 디렉토리 구조 및 설치 환경세팅
CRA는 기본적으로 웹팩을 사용하여 빌드 및 번들링을 수행
Vite는 빠른 핫 모듈 리로딩(HMR)과 빌드 시간을 최소화하기 위해 ES 모듈을 사용
SWC는 "Speedy Web Compiler"의 약자로, Rust에서 개발된 초고속 JavaScript/TypeScript 컴파일러
참고자료
https://velog.io/@castillou/TypeScript%EC%99%80-TypeScriptSWC%EC%9D%98-%EC%B0%A8%EC%9D%B4
https://swc.rs/
1) npm create vite@latest
2) Project Name 입력
- Project Name
3) Package Name 입력
- Project Name
4) Framework 선택
- react
5) Variant 선택
- TypeScript - SWC
브라우저와 Node.js에서 사용할 수 있는 Promise 기반의 HTTP 통신 라이브러리
리액트 전용 상태 관리 라이브러리
ESLint는 자바스크립트/타입스크립트 코드에서 문법 오류, 잠재적인 문제, 스타일 규칙 위반 등을 검사
Prettier는 코드의 형식(포맷)을 자동으로 맞춰주는 도구 (들여쓰기, 세미콜론, 따옴표, 줄바꿈 등등...)

Axios (서버 통신)
- npm install axios
Zustand (상태 관리)
- npm install zustand
React Router (라우터)
- npm install react-router-dom
React I18n (다국어)
- npm install react-i18next i18next
# 수정됨
eslint, prettier
- npm i -D eslint prettier eslint-plugin-react eslint-config-prettier eslint-plugin-prettier @typescript-eslint/eslint-plugin @typescript-eslint/parser
src
├── assets
│ ├── img
│ └── styles
├── components
│ ├── layout
│ └── ui
├── hooks
│ └── useNetwork.ts
├── i18n
│ ├── en.json
│ ├── ko.json
│ └── index.ts
├── pages
│ ├── demo
│ ├── error
├── routes
│ └── index.tsx
├── shared
│ ├── constant.ts
│ └── util.ts
├── stores
│ └── userInfo.ts
└── type
└── userInfo.ts