๐ช Underwind โ ๋ฐ๋์ด ๋ฐฉํฅ์ ๋ฐ๊พธ๊ฒ ํ๋ ์คํํฐ ํ ๋ง
Source: Dev.to

ํ ๋ฒ์ ์ปค๋ฐ์ด ์๋ํ๋ ์ค ๊ดํํ ์๊ตญ์ ์์์ ๋, Underscores ๋ผ๋ ๊ฒธ์ํ ํ ๋ง๊ฐ ์์์ต๋๋ค โ ์ต์ํ์ HTML5 ํ ํ๋ฆฟ๊ณผ ๊น๋ํ PHP๋ง์ผ๋ก๋ ์๋ จ๋ ๊ฐ๋ฐ์๋ค์ ๋ฏธ์ ์ง๊ฒ ํ๋ ๋ฒ ์ด๋ณธ ์คํํฐ์์ต๋๋ค. ์คํ์ผ์ ๋ง์ง ์์์ง๋ง, ๊ฟ์ด ์๋ผ๋ ํ ๋๋ฅผ ๋ง๋ จํด ์ฃผ์์ต๋๋ค.
์๋ง์ ๋ฌ ๋์ ์ฅ์ธ๋ค์ Understrap ๊ฐ์ ํ๋ ์์ํฌ๋ฅผ ์ด ๊ฒฌ๊ณ ํ ๋ฟ๋ฆฌ ์์ ์ ๋ชฉ์์ผฐ์ต๋๋ค โ Underscores์ ๊ฐ๋ฒผ์ด ์ฝ๋๋ฅผ Bootstrap์ ๋ฐ์ํ ํ์์ ๊ฒฐํฉํด ๋งค ํ์คํธ๋ง๋ค ์๊ฐ์ ์ ์ฝํด ์ฃผ๋ ์์ง์ ๋ง๋ค์์ต๋๋ค. ํ์ง๋ง ๊ฐ๋ฐ์๋ค ์ฌ์ด์ ์๋ก์ด ๋ฐ๋์ ๋ํ ์์ญ์์ด ํผ์ง๊ธฐ ์์ํ์ต๋๋คโฆ
๐ฌ๏ธ ์๋ก์ด ๋ฐ๋์ ๋ถ๋ฆ
์ ์ค์ ๋ฐ๋ฅด๋ฉด ์ด์ฌ์ด ๋งบํ ์์นจ, VSโฏCode ํญ์ด ๊ฐ๋ํ ์ํฉ์์ Melasistema ํ์ด Understrap์ ๋ฐ๋ผ๋ณด๋ฉฐ ํ์จ์ ์ฌ์๋ค๊ณ ํฉ๋๋ค. ๊ทธ๋ค์ Bootstrap์ ๊ฒฉ์์ ๊ทธ๋ฆฌ๋ ๊ตฌ์กฐ๋ฅผ ์ฌ๋ํ์ง๋ง, ๋ง์์ ์ ํธ๋ฆฌํฐโํผ์คํธ ํด๋์ค์ ๋ฒ์ฉ์ด๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ฐ๊ณ ์์์ต๋๋ค. ๊ทธ๋์ ์๊ฐ์ ์๊ฐ์ ๊ทธ๋ค์ Underscores์ ๊ฒฌ๊ณ ํ ๊ธฐ๋ฐ์ ์ก๊ณ ๋ฐ๋์ ๋ฐฉํฅ์ ๋ฐ๊พธ์ด TailwindโฏCSS๋ฅผ ๋ฐ์๋ค์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด ์ฐฝ์๋ฌผ์ ์ด๋ฆ์ ๋ถ์์ต๋๋คโฆ Underwind.
๐ Underwind๊ฐ ๋ง๋ฒ ๊ฐ์ ์ด์
- โจ ํ๋์ ์ธ ๊ฐ๋ฐ ํ๊ฒฝ โ Vite์ Hot Module Replacement (HMR)์ผ๋ก ๊ตฌ๋; ๋ ๊น์งํ ์ฌ์ด์ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ง๋ฒ์ฒ๋ผ ๋ฐ์๋ฉ๋๋ค.
- โจ ์ ํธ๋ฆฌํฐโํผ์คํธ ์คํ์ผ๋ง โ TailwindโฏCSS ๋๋ถ์ ์ปค์คํ ํด๋์ค ๋ฌด๊ฒ์ ์ฝ๋งค์ด์ง ์๊ณ ๋งํฌ์ ์์์ ์ง์ UI๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
- โจ Alpine.js ์ง์ โ ๊ฑฐ์ ์ค๋ฒํค๋ ์์ด ์ด์์๋ ์์ ์ธํฐ๋ํฐ๋ธ ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
- โจ ๊ฐ๋ณ๊ณ ๊ฒฌ๊ณ ํ ๊ธฐ๋ฐ โ Underscores ํ ํ๋ฆฟ์ด ๋ผ๋๋ฅผ ํผํผํ๊ฒ ์ ์งํด, ์์ํ๋ ์ด๋ค ๋ง์ถค ํ ๋ง๋ ์ฝ๊ฒ ๊ตฌํํ ์ ์์ต๋๋ค.
- โจ WooCommerce ์นํ์ โ ์จ๋ผ์ธ ๋ง์ผํ๋ ์ด์ค๋ก ์ง์ถํ๋ ์์ธ๋ค์๊ฒ ํฐ ๋์์ด ๋ฉ๋๋ค.
- โจ ํตํฉ ์ฝ๋ ํ์ง ๋๊ตฌ โ ESLint, Prettier, PHP_CodeSniffer๊ฐ ๊ฐ์ฅ ๊น๋ค๋ก์ด ์ฝ๋ ํ์ค๋ ์ง์ผ์ค๋๋ค.
์ด๋ ๋จ์ํ ์คํํฐ๊ฐ ์๋๋ผ ๋ ๊ฐ๊ฐ ๋ฌ๋ฆฐ ์บ๋ฒ์ค์ด๋ฉฐ, ์ฐฝ์์๋ค์ด ๊ทธ ์ด๋ ๋๋ณด๋ค ๋น ๋ฅด๊ณ ์ฆ๊ฒ๊ฒ ์์ ํ๋๋ก ์ด๋ํฉ๋๋ค.
๐ ์์ํ๊ธฐ: ์์ ์ ํ์คํธ
- ์ ์ฅ์๋ฅผ ์๋ํ๋ ์ค ํ ๋ง ํด๋์ ํด๋ก ํฉ๋๋ค.
npm install๊ณผcomposer install๋ก ์์กด์ฑ์ ์ค์นํฉ๋๋ค.npm run dev๋ฅผ ์คํํด ์ฆ์ ๋ฆฌ๋ก๋๋๋ ์์ ์ ๊ฐ์ํฉ๋๋ค.npm run build๋ก ํ๋ก๋์ ๋น๋๋ฅผ ํฉ๋๋ค.
๊ทธ ์๊ฐ, ํ๋ ๋น ๋ฐฑ์ง์๋ ๊ฒ์ด Tailwind ํด๋์ค๊ฐ ๋์ฒ๋ผ ํ๋ ๋ฆฌ๋ ์ฅ์ธ์ ์ฆ๊ฑฐ์์ผ๋ก ๋ณํฉ๋๋ค.
๐งญ Underwind๊ฐ ์ค์ํ ์ด์
์๋ํ๋ ์ค ํ ๋ง ์๊ตญ์๋ ๋ค์ํ ๊ธธ์ด ์กด์ฌํฉ๋๋ค: Underscores์ ์์ํ ๋ณธ์ง๋ถํฐ Understrap ๊ฐ์ Bootstrap ๊ธฐ๋ฐ ํ๋ ์์ํฌ๊น์ง. ๊ทธ๋ฌ๋ ํ๋ ๋๊ตฌ, ์ ํธ๋ฆฌํฐโํผ์คํธ ์คํ์ผ๋ง, ๊ทธ๋ฆฌ๊ณ ์ ๊ตํ ๊ฐ๋ฐ์ ๊ฒฝํ์ ํ๋์ ์คํํฐ์ ๊ฒฐํฉํ ๊ฒฝ์ฐ๋ ๋๋ญ ๋๋ค.
Underwind ๋ ๋จ์ํ ๊ธฐ๋ฐ์ ์ ๊ณตํ๋ ๊ฒ์ด ์๋๋ผ ๋ชจ๋ฉํ ์ ์ ๊ณตํฉ๋๋ค. ๋ฐ๋ก ์ฌ๋ฌ๋ถ์๊ฒ ์์ญ์ด๋ ํ ๋ง์ ๋๋ค:
โ์ฆ๊ฑฐ์์ผ๋ก ๋์์ธํ๊ณ , ์๋๋ก ๊ฐ๋ฐํ์ธ์. ๋ฐ๋์ด ์ฌ๋ฌ๋ถ์ ์์ผ๋ก ๋์๊ฐ๊ฒ ํ ๊ฒ๋๋ค.โ
๐ซ ์ํ๋ก๊ทธ
๊ทธ๋ฆฌํ์ฌ ๋ ๊ฑฐ์ ์ํฌํ๋ก์ฐ๊ฐ ์ ๋ฌผ๊ณ Tailwind๊ฐ ์๋ํ๋ ์ค ๊ฐ๋ฐ์ ์ฒซ ๋น์ ๋น์ถ๋ ์๊ฐ, Underwind ๊ฐ ์ฐ๋ ์ฐ์ต๋๋ค โ ์ผ์ฌ์ฐฌ ํ ๋ง ์ ์์๋ฅผ ์ํ ์๋ก์ด ํ์ค์ด์ฃ .
์ฌ๋ฌ๋ถ์ ์ปค๋ฐ์ด ์๋ฏธ ์๊ธฐ๋ฅผ, Tailwind ํด๋์ค๊ฐ ์ธ์ ๋ ํ์ฑํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.