๋ค๊ฐ์ค๋ ์น๊ตฌ ๊ฒฐํผ์์ ๋ชจ์ฒญ์ ๋ง๋ค์ด์ฃผ๊ธฐ๋ก ํ๋ค~! ์ด์ ๋ง๋๋๊ฑฐ ๋ด๊ฐ ํด๋ณด๊ณ ์ถ์๋๊ฑฐ ๋ง๊ป ์จ๋ณด๋ ค๊ณ ๊ธฐ๋กํด๋๋ค.
๊ฐ๋ฐ ํ๊ฒฝ
๋ฐฉ๋ช
๋ก ๊ธฐ๋ฅ๋๋ฌธ์ ๋ฐฑ์๋๋ ์ด๋ป๊ฒ ํ ์ง ๊ณ ๋ฏผ...
์ผ๋จ ํ๋ก ํธ์๋๋ Vite + React + TS + Tailwind CSS๋ก ๊ตฌํํ ์์ ์ด๋ค.
์ฌ์ค ๊ฑฐ์ ์ ์ + ๋จ์ผ ํ์ด์ง์ฌ์ ๋ฐ๋๋ผ JS๋ก ํ ๊น ํ๋ค๊ฐ.. ๊ทธ๋๋ ํ์์ TypeScript๋ฅผ ์ ์๋ค๋ค๋ด์ ์จ๋ณด๋ฉด์ ์ต์ํด์ง๊ณ ์ถ๋ค๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ค.
ํ์ ๊ธฐ๋ฅ
- ๋ ธ๋ ๋ฃ๊ธฐ
- ๋ฌ๋ ฅ
- ๋๋ฐ์ด
- ์ฌ์ง
- ์ฝ๋
- ์ง๋ ์ฐ๋
- ๋ฐฉ๋ช ๋ก
ํ๊ฒฝ ์ค์
1. vite๋ก ํ๋ก์ ํธ ์์ฑ
๊นํ๋ธ๋ฅผ ๋๋ฌ๋ณด๋ ๋ด๊ฐ ํ๊ต๋ค๋
์ ๋๋ ๊ฑฐ์ CRA๋ฅผ ํตํด ํ๋ก์ ํธ ์์ฑ์ ํ์๋๋ฐ ์์ฆ์ vite๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ๋ ๊ฑธ ๋ณผ ์ ์์๋ค. Vite๋ ๋น ๋ฅด๊ณ ๊ฐ๋ฒผ์์ ๊ฐ๋ฐ์ ๊ฒฝํ์ ํฌ๊ฒ ๊ฐ์ ํ๋ค๊ณ ํ๋ค.
์๋์ ๋ช
๋ น์ด๋ฅผ ํตํด ํ๋ก์ ํธ๋ฅผ ์์ฑํด์คฌ๋ค.
npm create vite@latest wedding-invite -- --template react-ts
2. Tailwind css ์ค์น
tailwind๋ ์ธ๋ผ์ธ์ผ๋ก ๋ฐ๋ก ์คํ์ผ์ ์ค์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ํธ๋ฆฌํด์ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค. ์ธํฐ๋ท์ ๋ง์ด ๋์ค๋ ์ค์น ๋ช ๋ น์ด๋ก ์ค์นํ๋๋ฐ ์ค๋ฅ๋จ..
npm ERR! could not determine executable to run
๊ตฌ๊ธ๋งํด๋ณด๋ Tailwind๊ฐ ์ ๋ฐ์ดํธ๋๋ฉด์ tailwind intellisence ํ์ฅ ํ๋ก๊ทธ๋จ๊ณผ ํธํ์ด ๋์ง ์์ ๋ฐ์ํ๋ ์๋ฌ๋ผ๊ณ ํ๋ค. ๋ฐ๋ผ์ ์๋์ ๋ช ๋ น์ด๋ก ์ค์นํด์คฌ๋ค.
npm install -D tailwindcss@3.4.17 postcss autoprefixer
Tailwind Css ์คํ
npx tailwindcss init -p
๊ฐ๋ฐ ํ๊ฒฝ ์ค์ ์ ๋๋ด๊ณ ๋์์ ํด๋ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.
์ฝํ ์ธ ์์ญ ์ค์
๋ณดํต ๋ชจ๋ฐ์ผ ์ฒญ์ฒฉ์ฅ์ ๋๋ถ๋ถ ๋ชจ๋ฐ์ผ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฆฌ๊ธฐ ๋๋ฌธ์, ์ผ๋ฐ ์น๋ทฐ์์๋ ๋ชจ๋ฐ์ผ ๋ทฐ ๊ธฐ์ค์ผ๋ก ์๋ํ๋๋ก ์ค์ ํ๋ค.
๋ฐ๋ผ์ ์ฝํ
์ธ ์์ญ์ ํญ์ ๋ชจ๋ฐ์ผ ํฌ๊ธฐ๋ก ์ ํํ๋ค.
'Dev' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[React + TypeScript + TailwindCSS] ๋ชจ๋ฐ์ผ์ฒญ์ฒฉ์ฅ ๊ฐ๋ฐํ๊ธฐ 2์ผ์ฐจ (0) | 2025.05.19 |
---|---|
[Python] KRX ์น์ฌ์ดํธ ํฌ๋กค๋งํด์ DB์ ์ ๋ณด ๋ฃ๊ธฐ (2) (0) | 2024.04.04 |
[MySQL] KRX ์น์ฌ์ดํธ ํฌ๋กค๋งํด์ DB์ ์ ๋ณด ๋ฃ๊ธฐ (1) (0) | 2024.04.04 |
[React] ๋ชจ๋ import ์ ์๋ ๊ฒฝ๋ก์ ๋ณต์ก์ฑ ์ค์ด๋ ๋ฒ (0) | 2024.03.08 |
[JavaScript] npm VS yarn (2) | 2024.03.08 |