Storybook์ ๋จ์ํ ํ ์คํ ํด์ ๋์ด ํ์ & ๋ฌธ์ํ ํด์ด๋ค.
๊ทธ๋ฌ๊ธฐ ์ํด์ ๋น์ฐํ ๊ณต์ ํ ์ ์๋๋ก ๋ฐฐํฌ๋ ํ ์ ์๊ณ Storybook์ ๋ฐฐํฌํ๊ธฐ ์ํ ์ ์ฉ ์๋น์ค๊น์ง ์๋ค.
๊ทธ๊ฒ์ด ๋ฐ๋ก Chromatic!
Chromatic ๊ณผ ํจ๊ป๋ผ๋ฉด ๋ฐฐํฌ๋ ๋ฌผ๋ก ๊ทธ ์ดํ์ build ๊ด๋ฆฌ๊น์ง Storybook ๋ง์ถค์ผ๋ก ์์ฝ๊ฒ ํ ์ ์๋ค!
์ค๋น๋ฌผ์ Storybook์ ์ ์ฉํ ํ๋ก์ ํธ Github ๋ ํฌ์งํ ๋ฆฌ๋ง ์์ผ๋ฉด ๋๋ค!
1. ๊ฐ์
๋จผ์ Chromatic ์ฌ์ดํธ์ ์ ์ํด Github ๊ณ์ ์ผ๋ก ๊ฐ์ ์ ํด์ฃผ์!
2. ํ๋ก์ ํธ ์์ฑ
์๋ง ์ต์ด ํ์๊ฐ์ ์ ํด์ ๋ก๊ทธ์ธ์ ํ๋ฉด ์์ ํ๋ฉด์ด ๋ฐ ๊ฒ์ด๋ค.
์ฌ๊ธฐ์ Choose from GitHub์ ์ ํ!
๋ง์ฝ ์๋ฌ๋ค๋ฉด ํ๋ฉด Projects ํญ์ ์๋ add project ๋ฅผ ์ฐพ์์ ํด๋ฆญํ๋ฉด ์ ํ๋ฉด์ด ๋ฌ๋ค!
๊ทธ๋ค์์ Github ๊ณ์ ์ Storybook์ ๋ฐฐํฌํ๊ณ ์ถ์ ์ ์ฅ์๋ฅผ ์ ํํด์ค๋ค!
(๐ฏ ๋ฐฐํฌํ๋ ค๋ฉด ํ๋ก์ ํธ๋ฅผ Github ๋ ํฌ์งํ ๋ฆฌ์ ๋ฏธ๋ฆฌ ์ฌ๋ ค๋์ผ ํ๋ค!!)
๊ทธ๋ฌ๋ฉด ์ด ํ์ด์ง๊ฐ ๋จ๋๋ฐ ์ด์ ๋ค ๋๋ ๊ฑฐ๋ ๋ค๋ฆ์๋ค!
์ด์ ๊ทธ๋ฅ vscode ๋ก ๊ฐ์ ์ ํ์ด์ง์ ๋ ์๋ ๋ช ๋ น์ด 2๊ฐ๋ฅผ ํฐ๋ฏธ๋์ ์ ๋ ฅํด์ฃผ๊ธฐ๋ง ํ๋ฉด ๋์ด๋ค!
3. ๋ฐฐํฌํด๋ณด๊ธฐ!
1. ํ๋ก์ ํธ์ Chromatic ์ค์น
npm install --save-dev chromatic
yarn add --dev chromatic
์์ ๋ ๋ช ๋ น์ด ์ค ํ๋๋ฅผ ํฐ๋ฏธ๋์ ์ ๋ ฅํด์ ํ๋ก์ ํธ์ Chromatic ์ ์ค์นํด์ค๋ค!
2. ์ฐ ๋ฐฐํฌ!
npx chromatic --project-token=<project ๊ณ ์ token>
์ด์ ์ ํ์ด์ง ์๋์ ์๋ ๋ช ๋ น์ด๋ฅผ ๊ทธ๋๋ก ๋ณต์ฌํด์ ํฐ๋ฏธ๋์ ์ ๋ ฅํด์ฃผ์!
๊ทธ๋ฌ๋ฉด ์ด๋ ๊ฒ ์ฑก์ฑก์ฑก ๋ญ๊ฐ ์์ ์ด ์งํ์ด ๋๋ค๊ฐ!
Storybook์ ์๋ฌด ์ค๋ฅ๊ฐ ์๋ค๋ฉด ์ ์์ ์ผ๋ก ๋ฐฐํฌ๊ฐ ๋ง๋ฌด๋ฆฌ๋๋ค!!!
์ด๊ฒ ๋์ด๋ค ๋! ^0^)/
์ ์๋ ํ๋์์ผ๋ก ๋์ด ์๋ ๋งํฌ๋ฅผ ๋ค์ด๊ฐ ๋ณด์!
4. ์ถ๊ฐ ์ค์ & ํํ ๋ฆฌ์ผ?
ํ๋์์ ๋งํฌ๋ฅผ ๋ค์ด๊ฐ๋ฉด ์ถ๊ฐ Setup ํ์ด์ง๊ฐ ๋ฌ๋ค.
๋์ถฉ ํด๋ณด๋๊น ์ปดํฌ๋ํธ ๋ณ๋ก ๋ณ๊ฒฝ์ฌํญ์ ์ถ์ ํ๋ ๋ฐฉ๋ฒ์ด๋ work flow ๊ฐ์๊ฑธ ์๋ ค์ฃผ๋ ๋จ๊ณ ๊ฐ์๋ฐ
ํ๋์ ๋ฒํผ์ ๋๋ฌํ๋ผ๋ ๋๋ก ๋ฐ๋ผ์ ์งํํด๋ ๋๊ณ ํ๊ธฐ ๊ท์ฐฎ์ผ๋ฉด ๊ทธ๋ฅ ์๋์ Go to your project ๋ฅผ ํด๋ฆญํด์ฃผ์!
5. ๋ฐฐํฌํ ์คํ ๋ฆฌ๋ถ ๊ณต์ ํ๊ธฐ!
์์์ ์ค์ ์ ๋๋ด๊ฑฐ๋ Go to your project ๋ฅผ ๋๋ ๋ค๋ฉด build ํ์ด์ง๋ก ๋์ด๊ฐ๊ฒ ๋๋ค!
๋ด๊ฐ ์์ ํ๊ณ ๋ฐฐํฌํ ์คํ ๋ฆฌ๋ถ์ build ๋จ๊ณ๋ณ๋ก ํ์ธํ ์ ์๋ค!
Builds ์ค ๋ด๊ฐ ๊ณต์ ํ๊ณ ์ถ์ ๋ฒ์ ์ ํด๋ฆญํ์!
๊ทธ๋ฌ๋ฉด Build ๊ด๋ฆฌ ํ์ด์ง๊ฐ ๋จ๋๋ฐ ์ฌ๊ธฐ์ ์ฐ์ธก ์๋์ ์๋ View StoryBook ๋ฒํผ์ ํด๋ฆญ!!
์จ!!!!!!!!!
๋ด๊ฐ ๋ฐฐํฌํ ์คํ ๋ฆฌ๋ถ์ด ๋ฌ๋ค!!!!!!!!!!!!
์ด์ ์ ์์ ๋งํฌ๋ฅผ ๋ณต๋ถ ํด์ ๊ณต์ ํ๋ฉด ๋๋ค!!!!!!
ํน์ ์ปดํฌ๋ํธ๋ฅผ ๊ณต์ ํ๊ณ ์ถ์ผ๋ฉด ์ ์ฒด ๋งํฌ๋ฅผ ๋ณต๋ถ ํ๋ฉด ๋๋ค!!!!!!!
*.โโธ(โหแหโ)โธโก.*
๋ฐฐํฌ ๋!!!!!!!!!!
๋ฒ์ธ
1. ๋ง์ฝ Private Repository ๋ผ๋ฉด?
Storybook๋ Private์ผ๋ก ๋ฐฐํฌ๊ฐ ๋๋ค.
๊ทธ๋์ ๊ณต์ ํ๋ ค๋ฉด ๊ณต์ ํ๊ณ ์ ํ๋ ๋์์ ๋ด Storybook์ ์ด๋๋ฅผ ํด์ผ ๊ณต์ ๊ฐ ๊ฐ๋ฅํ๋ค
ํ์ง๋ง ๊ทธ๊ฑด ๋๋ฌด ๊ท์ฐฎ๊ณ , ๋ถํน์ ๋ค์์๊ฒ ๊ณต์ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ๋ผ๋ฉด ์๋์ ๊ฐ์ด Visibility๋ฅผ public์ผ๋ก ์ค์ ํด์ฃผ๋ฉด ๋๋ค!
์ผ์ชฝ์ Manage ๋ฉ๋ด๋ฅผ ๋๋ฌ Collaborate ํญ์ผ๋ก ๋ค์ด์จ๋ค.
์๋๋ก ๋ด๋ ค๋ณด๋ฉด Collaborator๋ฅผ ์ด๋ํ ์ ์๋ ๋งํฌ๋ ์์ง๋ง ๋์ด๊ฐ๊ณ ๋งจ ์๋๋ก ์ญ์ญ ๋ด๋ฆฐ๋ค!
๋งจ ์๋๋ก ๋ด๋ฆฌ๋ฉด VISIBILITY ํญ๋ชฉ์ด ์๋ค!
์ฌ๊ธฐ์ Make public์ ๋๋ฌ์ฃผ๋ฉด ๋! ( แ )ู
2. ๊ณต์ ๋งํฌ๋ก ๋ค๋ฅธ ์ฌ์ฉ์๊ฐ ์ ์ํ๋๋ฐ 404๊ฐ ๋ฌ๋ค?!
๋ด ๊ฒฝํ์ private ๋ ํฌ์งํ ๋ฆฌ๋ฅผ public์ผ๋ก ๋ณ๊ฒฝํ๊ณ ๋ฐ๋ก ๋ฐฐํฌํ์ ๋ 404๊ฐ ๋ด์๋ค.
์ด๋ฐ ๊ฒฝ์ฐ ๋ค์ ๋งํฌ๊น์ง ํจ๊ป ๊ณต์ ํด๋ณด์!
๊ทธ๋ผ ์ ๋๋ก ๋ฌ๋ค!
โธ( โเฟโ )โธ๏ธ๏ธ ์ผํธ!
3. ๊ผญ Chromatic ์ผ๋ก ํด์ผ ํ๋!?
๊ผญ ๊ทธ๋ด ํ์ ์๋ค!
๋ณธ์ธ์ด ์ํ๋ Netlify, Heroku, AWS๋ ๋ญ๋ ๊ฐ๋ฅํ๋ค!
์ผ๋ง ์ ์ ์คํ ๋ฆฌ๋ถ ๋ฐฐํฌ๋ฅผ ํ ์คํธํด๋ณด๋ ค๊ณ Chromatic, Netlify, Heroku ๋ก ์ ๋ถ ๋ฐฐํฌ๋ฅผ ํด๋ดค๋๋ฐ
์ ์ผ ๋น ๋ฅด๊ณ ์ฌ์ ๋ ๊ฑด Netlify CLI ์๋ค.
10์ด ์ด๋ด๋ก ๋ฐฐํฌ ๊ฐ๋ฅ! ใด(ใ 0ใ )ใฑ!
Netlify CLI ๋ ์ฝ์ฟผ ๋ง์คํฐ์ฆ์ ํํฌ๊ป์ ๊ณต์ ํด์ฃผ์ ์ ์๊ฒ ๋ ๋ฐฐํฌ ํ๋ซํผ์ธ๋ฐ ๋ ์ ์ฐ๊ณ ์๋ค. ๊ฐ์ฌํจ๋น ^-^)b ํคํ!
์ฌํํผ Netlify CLI ๋ก 10์ด ์ปท ๋ฐฐํฌ๋ฅผ ํด๋ณด์!
1. ๋จผ์ Storybook ์ build ํ๋ค!
yarn build-storybook
์คํ ๋ฆฌ๋ถ build๋ Storybook์ ์ด๋ฏธ ๋ด์ฅ๋์ด ์๋ ๊ธฐ๋ฅ์ผ๋ก ํฐ๋ฏธ๋์ ์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด...
์ง ! ํ์ฌ ๋๋ ํฐ๋ฆฌ ๋ด์ storybook-static์ด๋ผ๋ ํด๋๊ฐ ์์ฑ๋๋ค!
์ ๊ฑธ ๊ทธ๋ฅ netlify ๋ heroku ๋ ํต์งธ๋ก ๋ฐฐํฌํ๋ฉด ๋๋ค!!!!!
2. Netlify CLI ์ค์น
npm install netlify-cli -g
์์ ๋ช ๋ น์ด๋ก Netlify CLI ๋ฅผ ์ค์นํด์ฃผ์!
3. Netlify CLI ๋ก ๋ฐฐํฌํ๊ธฐ
netlify deploy --dir ./storybook-static
์ด์ netlify deploy ๋ช ๋ น์ด์ dir ์ต์ ์ ์ค์ ํด์ ํฐ๋ฏธ๋์ ์ ๋ ฅํด์ฃผ๋ฉด!
์ต์ด Netlify ์ฌ์ฉ์ ๊ฑฐ๋, ๋ก๊ทธ์ธ์ด ์๋์ด ์๋ค๋ฉด ๋ก๊ทธ์ธํ๋ผ๋ ์๋ด๊ฐ ๋ฐ ๊ฑฐ๊ณ ์๋๋ผ๋ฉด ์ ๋ ๊ฒ ๊ธฐ์กด์ ๋ฐฐํฌํ ์ฌ์ดํธ์ ์ฐ๊ฒฐํ ๊ฑด์ง ์๋๋ฉด ์๋ก ๋ง๋ค ๊ฑด์ง ์ ํํ๋ผ๊ณ ํ๋ค.
๋น์ฐํ NEW SITE ๋ค!
๊ทธ ํ ๊ฐ๋จํ๊ฒ Team Name, Site Name์ ์ ๋ ฅํ๊ณ ๋๋ฉด?!
๋ฐฐํฌ ๋!!!!!!!!!!!!!!!!!!!
Website Draft URL ๋งํฌ๋ก ์ ์ํ๋ฉด ๋นค๋ฑ๋นค๋ฑํ ๋ด Storybook์ด ๋ฌ๋ค!
์ผํธ!!!! ๋๋ฌด ์ฝ๋ค!!!!!
โง*๏ฝกูฉ(ห v ห*)ูโง*๏ฝก
(+) ์ดํ Netlify๋ฅผ product ๋ก ๋ฐฐํฌํ๊ณ ์ถ์ผ๋ฉด ์์ ๋ก๊ทธ์ ์ ํ์๋ฏ์ด netlify deploy --prod ๋ช ๋ น์ด๋ก ๋ค์ ๋ฐฐํฌํ๋ฉด ๋๋ค!
+ ) Chromatic & Netlify ๋น๊ต
VM Project Chromatic Link
VM Project Netlify Link
๋ ์๋น์ค๋ฅผ ๋น๊ต๋ฅผ ํด๋ณด๋ฉด ๋ฐฐํฌ ๋์ด๋๋ ๊ท์ฐฎ์ ์ ๋๋ Netlify CLI ์์น์ด์ง๋ง ์ต์ด ์ฌ์ดํธ์ ์ ์ํ์ ๋ ๋ก๋ฉ ์๋๋ ๊ฐ์ธ์ ์ผ๋ก Chromatic ์ด ์กฐ๊ธ ๋ ๋น ๋ฅธ ๊ฑฐ ๊ฐ๋ค.
๋ ์ค ๋ญ๋ ๋ณธ์ธ์ด ์ํ๋ ์๋น์ค๋ฅผ ์ด์ฉํ๋ฉด ๋์ง๋ง ๋๋ ์์ผ๋ก๋ ๊ณ์ Chromatic์ ์ฌ์ฉํ ๊ฑฐ ๊ฐ๋ค.
์๋๋ฉด ๋จ์ํ ๋ฐฐํฌํ๋ ๊ธฐ๋ฅ์ ๋์ด Chromatic ์ Storybook์ ํนํ๋ ์ด๋ฐ์ ๋ฐ ๊ธฐ๋ฅ์ ์ ๊ณตํด์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค.
์ผ๋จ build ๋ฒ์ ๋ณ๋ก ์ปดํฌ๋ํธ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ ์๋ ์๊ณ Collaborator ๋ค๋ผ๋ฆฌ Review๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ ๊ธฐ๋ฅ๋ ์๋ค!
๊ทธ๋์ ๊ธํ๊ฒ ๋ฐฐํฌํด์ผ ํ ๋ Netlify๋ฅผ ์ฐ๊ฒ ์ง๋ง ์ต์ข ์ ์ผ๋ก ๋ฐฐํฌํ๊ณ ๊ด๋ฆฌํ ๋๋ Chromatic์ ์ธ ๊ฑฐ ๊ฐ๋ค!
'๐ Study > ๐ฉบ Testing' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ Storybook Error : useLocation() may be used only in the context of a <Router> component. (0) | 2022.06.02 |
---|---|
React ํ๋ก์ ํธ์ Storybook ์ผ๋จ ์ฌ์ฉํด๋ณด๊ธฐ! with TS (2) | 2022.06.02 |