๋ฐ๋ธ์ฝ์ค ๋ด์์ ์ต๋ช /๊ธฐ๋ช ์ผ๋ก ํธ์ง๋ฅผ ๋ณด๋ด๋ SNS ์๋น์ค
โก๏ธ ์๋น์ค ์ด์ฉํ๊ธฐ
โก๏ธ ๋
ธ์
ํ์ด์ง ๋ณด๋ฌ๊ฐ๊ธฐ
ํผ์ด๋ฆฌ๋ทฐ๋ฅผ ์งํํ๋ฉด์ ์ ํ์ง ๋ชปํ ๋ง๋ค์ด ์์ด ์์ฝ์ง ์์ผ์ จ๋์? ๋๋ ๋ฐ๋ธ์ฝ์ค์ ์ฐธ์ฌํ๋ ๊ต์ก์๋ค์๊ฒ ์ง์ค๋ ๋ง์์ ํํํ์ง ๋ชปํ ์๊ฐ์ด ์์ง๋ ์์ผ์ จ๋์? ๐
๋จธ-์ฑ๋ ํฐ๋ ์ต๋ช /๊ธฐ๋ช ์ ํตํด์ ๋ค๋ฅธ ๊ต์ก์๋ค์๊ฒ ๋ง์์ ์ ๋ฌํ๊ธฐ ์ํ ์๋น์ค๊ฐ ์๋ค๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค๋ ๋ฐฐ๊ฒฝ์ ๊ธฐํํ SNS ์๋น์ค์ ๋๋ค.
์ฌ์ฉ์๋ ๋ค์ํ ๋จธ์ฑ์ด ํ ๋ง๋ฅผ ์ ํํด์ ์น๊ตฌ๋ค์๊ฒ ๋จธ์ฑ์ด๋ฅผ ๊พธ๋ฉฐ๋ฌ๋ผ๊ณ ๊ณต์ ํ ์ ์์ต๋๋ค. ๋จธ์ฑ์ด์๊ฒ ์ฅ์์คํฐ์ปค๋ฅผ ํ๋ํ๋ ๋ถ์ด๋ฉด์ ํ์์ ํ์ง ๋ชปํ๋ ์์๊ณผ ํผ๋๋ฐฑ์ ํธ์ง๋ฅผ ์ ์กํด ๋ง์์ ์ ๋ฌํด๋ณด์ธ์๐ฎ
- yarn์ด ํ์ฑํ ๋์ด ์์ง ์๋ค๋ฉด ํฐ๋ฏธ๋์์ corepack enable ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํฉ๋๋ค. (์ต์ด ํ๋ฒ)
- vscode์ ZipFS ์ต์คํ ์ ์ด ์ค์น๋์ด ์์ง ์๋ค๋ฉด ์ค์นํด์ผ ํฉ๋๋ค. (yarn berry๊ฐ ํจํค์ง๋ฅผ zip ํ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ๋๋ฌธ์, vscode์์ ์ด ๋ด์ฉ์ ๊ฐ์ ธ์์ ์ฐ๋ ค๋ฉด ์ต์คํ ์ ์ด ํ์ํฉ๋๋ค.)
- ๋ ํฌ์งํ ๋ฆฌ ํด๋ก ํ ํ๋ก์ ํธ์ ๋ฃจํธ ํด๋๋ก ๋ค์ด๊ฐ์ ํฐ๋ฏธ๋์
yarn
๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํฉ๋๋ค. - ํ์
์คํฌ๋ฆฝํธ ๋ฒ์ ์ yarn sdk์ ๋ง์ถ๊ธฐ ์ํด ์๋ฌด .ts ํ์ผ์ด๋ ๋ค์ด๊ฐ์
cmd + shift + p
ํ์Select TypeScript Version
๋ฅผ ์ ๋ ฅ ํUse Workspace Version
์ ์ ํํฉ๋๋ค.
- ํ๋ก ํธ์๋์์ ์ฌ์ฉํ
.env
ํ์ผ ๋ด์ฉ์/packages/web/.env
ํ์ผ๋ก ์์ฑํฉ๋๋ค. yarn web dev
๋ฅผ ์ ๋ ฅํ๋ฉด ๊ฐ๋ฐ ์๋ฒ๊ฐ ์คํ๋ฉ๋๋ค.yarn web build
๋ฅผ ์ ๋ ฅํ๋ฉด ํ๋ก ํธ์๋ ์ฝ๋๋ฅผ ๋น๋ํฉ๋๋ค.
- ์ฌ๋ ์๋ฒ์์ ์ฌ์ฉํ
.env
ํ์ผ ๋ด์ฉ์/packages/slack/.env
ํ์ผ๋ก ์์ฑํฉ๋๋ค. yarn slack dev
๋ฅผ ์ ๋ ฅํ๋ฉด ๊ฐ๋ฐ ์๋ฒ๊ฐ ์คํ๋ฉ๋๋ค.yarn slack build
๋ฅผ ์ ๋ ฅํ๋ฉด ์ฌ๋ ์๋ฒ ์ฝ๋๋ฅผ ๋น๋ํฉ๋๋ค.yarn slack start
๋ฅผ ์ ๋ ฅํ๋ฉด ๋น๋ํ ์ฝ๋๋ก ์๋ฒ๋ฅผ ์คํํฉ๋๋ค.
๋ฃจํธ ๋๋ ํ ๋ฆฌ์ package.json์ scripts๋ก ์ด๋ฌํ ๋ด์ฉ์ ์ ์ด๋์์ต๋๋ค:
"common": "yarn workspace common",
"slack": "yarn workspace slack", // Express ์ฑ
"web": "yarn workspace web", // React ์ฑ
- React ์ฑ์ ๋ํด์ axios๋ฅผ ์ค์น:
yarn web add axios
- React ์ฑ์ ๋ํด์ axios๋ฅผ ์ ๊ฑฐ:
yarn web remove axios
- Express ์ฑ์ ๋ํด์ dotenv๋ฅผ ์ค์น:
yarn slack add dotenv
์ธ์ด ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ | ย |
ํจํค์ง ๋ฐ ๋น๋ ํ๊ฒฝ | ย |
์คํ์ผ๋ง | ย |
๋คํธ์ํฌ ๋ฐ ์๋ฒ ์ํ ๊ด๋ฆฌ | ย |
์ฝ๋ ํฌ๋งทํ | ย |
ํผ ๋ฐ์ดํฐ ๊ด๋ฆฌ | ย |
๊ธฐํ | ย |
๋จ๊ถํธ์ | ๋ฐ์ฃผ์ฐ | ์ ํธ์ | ์ด์ํ | ์ฐํ์ง |