01. FE Environment
ํ๋ก ํธ์๋ ์์กด์ฝ์ค 1์ฃผ์ฐจ ๊ณผ์
๊ณ์ ์จ๋จน๋ ํ๊ฒฝ์ค์ ์ด์ ๋ฆฌ
1. ํจํค์ง ์ค์น๋ฅผ ์ํ node ์์ํ๊ธฐ
๋ ธ๋๋ฅผ ์ค์นํ๋ค. nodejs.org
ํฐ๋ฏธ๋๋ก ์ค์น๊ฐ ์ ๋์๋์ง ํ์ธ
node -v์์ ์ ์์ํ ํด๋๋ฅผ ์์ฑํ๋ค. (๋๋ฌธ์ ๊ธ์ง)
mkdir my-appํด๋ ์์ผ๋ก ์ด๋ํ๋ค. (m์น๊ณ tabํ๋ฉด ์๋์์ฑ๋จ)
cd my-appnode package manager ์ฌ์ฉ์ ์์ํ๋ค.
npm init=> ์ง๋ฌธํญ๊ฒฉnpm init -y=> ๋ค yes๋ก ๋๋ต
2. ํจํค์ง ์ค์น
0. .gitignore ์์ฑ
.gitignoreํ์ผ์ ๋ง๋ ๋ค.
touch .gitignore.gitignore Gernerator ์ ๋์์ ๋ฐ์ ๋ด์ฉ๋ฌผ์ ์ฑ์ด๋ค.
์ต์ํ
node_modules์dist๋ ๋ฃ์.
1. TypeScript
dev ๋ํ๋์๋ก ํ์ ์คํฌ๋ฆฝํธ๋ฅผ install
tsconfig.json ํ์ผ ์์
package.json ํ์ผ ์์ -> ๋ฌธ๋ฒ์ค๋ฅ ํ์ธ ๋ช ๋ น์ด check ์ถ๊ฐ -> CI ๋ฑ์ ์ถ๊ฐํ๋ค
2. React
react ์ค์น
๊ธฐ๋ณธ์ฝ๋ ์์ฑ
App.tsx ๋ด์ฉ์ฑ์ฐ๊ธฐ
index.tsx ๋ด์ฉ์ฑ์ฐ๊ธฐ
3. JEST + swc
jest ์ค์น
jest.config.js ๋ง๋ค๊ธฐ
jest-setup.js ๋ง๋ค๊ธฐ
src/App.test.tsx ๋ง๋ค๊ธฐ
package.json scripts์ ๋ช ๋ น์ด ์ถ๊ฐ
๋ช ๋ น์ด ์จ๋ณด๊ธฐ
4. ESLint
eslint๋ฅผ ์ค์นํ๋ค.
์ง๋ฌธ์ ๋๋ตํ๋ค.
package.json์devDependencies์ถ๊ฐ๋ ๋ด์ฉ ํ์ธ.eslintrc.jsํ์ผ์ ๋ค์ ์ธ ์ค์ ์ถ๊ฐpackage.json์"scripts"๋ช ๋ น์ด ์ถ๊ฐ.eslintignoreํ์ผ์ ์์ฑํ๋ค..gitignoreํ์ผ๊ณผ ๋๊ฐ์ด ์์ฑํด๋ oklint ์คํ์์ผ๋ณด๊ธฐ
์ ์ฅํ ๋๋ง๋ค lint ์คํ๋๊ฒ ํ๊ธฐ
5. Parcel
parcel์ ์ค์นํ๋ค.
package.json์ ๋ช ๋ น์ด ์ถ๊ฐ
.gitignore,.eslintignore์.parcel-cacheํด๋ ์ถ๊ฐindex.htmlํ์ผ ์์ฑpackage.json ํ์ผ ์์
์คํ์์ผ๋ณด๊ธฐ
package.json ์ npm ๋จ์ถ ๋ช ๋ น์ด ์ต์ข .json
Last updated