ํ ๋ ธ์ | ๋ฐฑ๋ก๊ทธ | ๊ทธ๋ผ์ด๋ ๋ฃฐ | ๊ธฐํ์ | figma | ๊ฐ๋ฐ์ํค
๋ค์์ ์ฌ์ฉ์๊ฐ ๋ก๊ทธ์ธ ์์ด ํจ๊ป ์ฐธ์ฌํ ์ ์๋ ์ค์๊ฐ ํด์ฆ ํ๋ซํผ BooQuiz ์ ๋๋ค.
์ด๊ธฐ ์๊ท๋ชจ ์๋น์ค์์ ์์ํด ์ ์ง์ ํ์ฅ๊ณผ ๊ธฐ์ ์ ์์ฑ๋๋ฅผ ํจ๊ป ์ถ๊ตฌํจ
- ์ ์ง์ ๊ฐ๋ฐ: 1๋ช โ 10๋ช โ 300๋ช ์ฌ์ฉ์๋ก ํ์ฅํ๋ฉฐ ๋งค์ฃผ ์์ฑ๋ ์๋น์ค๋ฅผ ๋ฐฐํฌ.
- ๋ณํ ๋์: ์ฃผ๊ธฐ์ ์ธ ๋ฆฌํฉํ ๋ง, ์ํคํ ์ฒ ์กฐ์ ์ ํตํด ์ ์ฐ์ฑ ์ ์ง.
- ํ์ ๊ฐํ: ํ์ด ํ๋ก๊ทธ๋๋ฐ์ ํตํ ์ ๊ทน์ ์ธ ํ์ .
- ํผ๋๋ฐฑ ๊ธฐ๋ฐ: ์ฌ์ฉ์ ํผ๋๋ฐฑ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ฐ์.
์์ญ | ๊ธฐ์ ์คํ |
---|---|
๊ณตํต | |
Frontend | |
Backend | |
์ธํ๋ผ | |
ํ์ ๋๊ตฌ |
timeline
title ์ ์ฒด ํ์๋ผ์ธ
section 0์ฃผ์ฐจ
ํ๋ก์ ํธ ๊ธฐํ ๋จ๊ณ: ๐ฏ ํ ๋น๋ฉ ๋ฐ ์์ด๋์ด ๋์ถ : ๐ ์๋น์ค ๊ธฐ๋ฅ ๊ตฌ์ฒดํ : ๐ ๊ธฐ์ ์คํ ๋ฐ ๊ฐ๋ฐ ํ๋ก์ธ์ค ํ์
section 1์ฃผ์ฐจ
ํ๋ก์ ํธ ๊ธฐ๋ฐ ๊ตฌ์ถ: ๐ ๋ชจ๋
ธ๋ ํฌ ํ๊ฒฝ ๊ตฌ์ฑ : ๐ ๊ธฐ์ ๋ฌธ์ํ : ๐ง ๊ฐ๋ฐ ์ปจ๋ฒค์
์ ๋ฆฝ
section 2์ฃผ์ฐจ
๊ธฐ๋ฐ ๊ธฐ๋ฅ ๊ตฌํ: ๐จ UI/์ปดํฌ๋ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ตฌ์ถ : ๐ป ํด์ฆ์กด ๋ชจ๋ ์ค๊ณ : ๐ WebSocket ๊ธฐ๋ณธ ์ฐ๊ฒฐ ๊ตฌํ
section 3์ฃผ์ฐจ
๋จ์ผ ์ฌ์ฉ์ ๊ธฐ๋ฅ: ๐ ํด์ฆ ์งํ ์ํ๊ด๋ฆฌ ๊ตฌํ(FE) : โก ํด์ฆ ์งํ/์ฑ์ ๋ก์ง : ๐ CI/CD ๋ฐ Docker ๊ตฌ์ฑ
section 4์ฃผ์ฐจ
๋ค์ค ์ฌ์ฉ์ ์ง์: ๐ฆ ํด์ฆ ์งํ ์ํ๊ด๋ฆฌ ๋ฆฌํฉํ ๋ง : ๐ WS ๋ฉ์์ง ํ ๊ตฌํ : ๐ฅ ๋์์ ์ ๋ฐ ๊ถํ ๊ด๋ฆฌ
section 5์ฃผ์ฐจ
์์คํ
๊ณ ๋ํ: โก WebSocket ์ต์ ํ : ๐พ DB ์ฐ๋ : ๐ ์ค์๊ฐ ์์ ์์คํ
: ๐จ UI/UX ๊ฐ์
timeline
title 0-1์ฃผ์ฐจ (10/21 - 11/02)
section 0์ฃผ์ฐจ - ํ ๋น๋ฉ (10/22 ~ 10/27)
10/22(์ผ) : ํ์ ์๊ธฐ์๊ฐ ๋ฐ ์ญ๋ ๊ณต์
: ํ๋ก์ ํธ ์์ด๋์ด ๋ธ๋ ์ธ์คํ ๋ฐ
: BooQuiz(๋์ ๊ณจ๋ ๋ฒจ) ์ด๊ธฐ ์์ด๋์ด ๋์ถ
section ์์ด๋์ด ๊ตฌ์ฒดํ (10/24)
10/24(ํ) : BooQuiz ์๋น์ค ์ธ๋ถ ๊ธฐ๋ฅ ๋
ผ์
: ์ค์๊ฐ ์ฐธ์ฌํ ํด์ฆ ํ๋ซํผ ์ปจ์
ํ์
: ํธ๋ํฝ ํ
์คํธ๋ฅผ ์ํ ๋ฐฉ ์ธ์ ์กฐ์ ๊ธฐ๋ฅ ๊ตฌ์
: ๋ถ์คํธ์บ ํ ํ
๋ง ํด์ฆ ์ฝํ
์ธ ๊ธฐํ
section ๊ธฐ์ ์คํ ๋ฐ ๊ท์น ํ์ (10/27)
10/27(๊ธ) : ๐ ๊ธฐ์ ์คํ ์ต์ข
ํ์
: FE - React / BE - NestJS
: ๐ง ๊ฐ๋ฐ ํ๋ก์ธ์ค ์ค์
: Git ๋ธ๋์น ์ ๋ต ์๋ฆฝ (main-dev-feat)
: PR ๋ฆฌ๋ทฐ ํ๋ก์ธ์ค ํ๋ฆฝ, ํ
์คํธ ์ฝ๋ ์์ฑ ์์น
: ๐ ํ๋ก์ ํธ ๊ทธ๋ผ์ด๋ ๋ฃฐ ์ค์
section ํ๋ก์ ํธ ๊ธฐ๋ฐ ๊ตฌ์ถ (10/28 ~ 10/30)
10/28: ํ๋ก์ ํธ ์ด๊ธฐํ
: ๋ชจ๋
ธ๋ ํฌ ์ค์
10/30: ์ ๋
ํ ๋ฉํ ๋ง
section ๋ฌธ์ํ ๋ฐ ๊ท์น (10/31)
10/31: README ์์ฑ
: ๊ธฐ์ ์คํ ์ ์ ๋ฌธ์ํ
section ๊ฐ๋ฐ ํ๊ฒฝ ์ค์ (11/01 ~ 11/02)
11/01: 1์ฃผ์ฐจ ๋ฐ๋ชจ๋ฐ์ด
11/02: ์ด์/PR ํ
ํ๋ฆฟ ์ถ๊ฐ
: ๊ฐ๋ฐ ์ปจ๋ฒค์
์ ๋ฆฝ
์งง์ ๊ฐ๋ฐ ๊ธฐ๊ฐ ๋์, ์ค์๊ฐ ํต์ ๋๋ถ์ด ํ์์ ๊ฐ์ธ ๋ชฉํ์ ๋์ ํด๋ณผ ์ ์๋ ํ๋ก์ ํธ ๊ธฐํ ํ์ ์ฃผ์ฐจ๋ณ ๋ชฉํ ์ค์ ์ ํตํด ์์ ์ ์ธ ์งํ๊ณผ ํ์ ๋๊ธฐ ๋ถ์ฌ์ ๊ธฐ์ฌ.
- ํ์๋ค๊ณผ ์ฒซ ๋ง๋จ์์ ๊ฐ์์ ์ญ๋๊ณผ ๊ด์ฌ์ฌ๋ฅผ ๊ณต์ ํ๋ฉฐ ํ๋ก์ ํธ ๋ฐฉํฅ์ฑ ๋ ผ์.
- ๋ธ๋ ์ธ์คํ ๋ฐ์ ํตํด ์ค์๊ฐ ์ฐธ์ฌํ ํด์ฆ ํ๋ซํผ ์์ด๋์ด ์ต์ข ์ ์ .
- ์ฃผ์ฐจ๋ณ ํ์ค์ ์ธ ๋ชฉํ๋ฅผ ์ค์ ํ์ฌ ๋จ๊ณ์ ์ผ๋ก ๊ธฐ๋ฅ์ ํ์ฅ.
- ๋งค์ฃผ ๋ฐ๋ชจ๋ฐ์ด๋ฅผ ํตํด ์ค์ ๋ฐฐํฌ๋ฅผ ์งํํ๋ฉฐ ํ๋ก์ ํธ ๋ฐ์ .
- ๋ชจ๋
ธ๋ ํฌ ๊ตฌ์กฐ ๋์
- pnpm workspace ์ ์ฉ
- ์ฝ๋ ํ์ง ๊ด๋ฆฌ
- ESLint, Prettier, Git hook
- ํ์
ํ๋ก์ธ์ค ํ๋ฆฝ
- ๋ธ๋์น ๋ณดํธ ๊ท์น ์ค์ , PR ํ ํ๋ฆฟ ๋์
- ํ๋ก์ ํธ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ
timeline
title 2์ฃผ์ฐจ (11/03 - 11/09)
section ๊ธฐ๋ฐ ๊ธฐ๋ฅ ๊ตฌํ
11/03(์ผ) : ๐จ Frontend/๊ธฐ๋ฐ : shadcn UI & Tailwind ์ค์
: ๐ง DevOps/๊ธฐ๋ฐ : Husky & Commitlint ์ค์ , Prettier ์ค์
: ๐ป Backend/๊ธฐ๋ฐ : ํด์ฆ์กด ๋ชจ๋/๋ฆฌํฌ์งํ ๋ฆฌ ์ธํฐํ์ด์ค ์ค๊ณ
section ์ปดํฌ๋ํธ ๊ฐ๋ฐ
11/04(์) : ๐จ Frontend/๊ธฐ๋ฐ
: Button, Typography, CommonInput ์ปดํฌ๋ํธ
: ContentBox, Layout ์ปดํฌ๋ํธ ๊ตฌํ
: ๐ป Backend/๊ธฐ๋ฐ
: ํด์ฆ์กด ๋ฉ๋ชจ๋ฆฌ ์ ์ฅ์ ๊ตฌํ
: ์ธ์
/์ฟ ํค ์ค์
: ์ ๋
ํ์ฐ๋ ๊ฐ์ธ ๋ฉํ ๋ง
11/05(ํ) : ๐จ Frontend/๊ธฐ๋ฐ
: Storybook ์ค์ ๋ฐ ์ปดํฌ๋ํธ ์คํ ๋ฆฌ ์์ฑ
: ๐ป Backend/๊ธฐ๋ฐ
: ์ปจํธ๋กค๋ฌ/์๋น์ค ๋ ์ด์ด ํ
์คํธ ์ฝ๋
: ๐ฅ ์ ๋
์คํ, ํ๋ฏผ, ์ ๋น ๊ฐ์ธ ๋ฉํ ๋ง
section WebSocket ๊ตฌํ
11/06(์) - 11/07(๋ชฉ) : ๐ป Backend/๊ธฐ๋ฅ
: WebSocket ๊ฒ์ดํธ์จ์ด ๊ตฌํ
: ๊ธฐ๋ณธ ์ฐ๊ฒฐ ๋ฐ ์ด๋ฒคํธ ํธ๋ค๋ง ๊ตฌํ
: SuperWSTest ๊ธฐ๋ฐ WS ํ
์คํธ
: ๐จ Frontend/๊ธฐ๋ฅ: Alert Dialog, TextCopy ์ปดํฌ๋ํธ ์ถ๊ฐ
: ๐ 2์ฃผ์ฐจ ํตํฉ
: ๊ณตํต ์ปดํฌ๋ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ฑ
: WebSocket ๊ธฐ๋ณธ ์ฐ๊ฒฐ ํ
์คํธ
11/08(๊ธ) : ๐ 2์ฃผ์ฐจ ๋ฐ๋ชจ๋ฐ์ด
11/09(ํ ) : ๐ง 2์ฃผ์ฐจ ๋ชจ๊ฐ๊ธ
- ๊ฐ๋ฐ ํ๊ฒฝ๊ณผ ํ๋ก์ธ์ค ์์ ํ, ํต์ฌ ๊ธฐ๋ฅ ๊ตฌํ ๊ธฐ๋ฐ ๋ง๋ จ.
- ํ์ด ํ๋ก๊ทธ๋๋ฐ ๋์ ์ผ๋ก ์ง์ ๊ณต์ ์ ๊ธฐ์ ์ ์ฑ์ฅ ์ด์ง ํฅ์ ์ด์ง.
- ํ๋ก ํธ์๋
- ๊ณตํต ์ปดํฌ๋ํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ตฌ์ถ์ ํตํ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ UI ํจํด ์ ๋ฆฝ
- Storybook์ ํตํ ์ปดํฌ๋ํธ ๋ฌธ์ํ
- ๋ฐฑ์๋
- TDD ๊ธฐ๋ฐ ํด์ฆ์กด ๋ชจ๋ ๊ฐ๋ฐ
- WebSocket ๊ฒ์ดํธ์จ์ด ๊ตฌํ
- ๋จ์ ํ ์คํธ ์์ฑ ๋ฐ ๊ฒ์ฆ
- ์ฐ๋ฆฌ๋ Vite, StoryBook, Tsdoc์ ์ ์ฌ์ฉํ ๊น?
- ์ฐ๋ฆฌํ์ด WS๋ฅผ ์ ํํ ์ด์
- Nest ์์กด์ฑ ์ฃผ์
timeline
title 3์ฃผ์ฐจ (11/10 - 11/16)
section ํด์ฆ์กด ๊ธฐ๋ณธ ๊ตฌํ
11/10-11/11: ๐จ QuizZoneManager ์ด๊ธฐ ์ํ๊ด๋ฆฌ ๊ตฌํ
: ํด์ฆ์กด ์์ฑ ํ์ด์ง ํผ๋ ๊ตฌ์กฐ ๊ตฌํ
: ๐ป ์ค์๊ฐ ํด์ฆ ์งํ ์ด๋ฒคํธ ์ฒ๋ฆฌ
section UI/UX ๊ตฌํ
11/11-11/12: ๐จ Timer ์ปดํฌ๋ํธ ๊ฐ์
: Progress Bar ์ ๋๋ฉ์ด์
๊ตฌํ
: ๐ป ๋ต์ ์ ์ถ ๋ฐ ์ฑ์ ๋ก์ง
: ๐ง Winston ๋ก๊ฑฐ ๋ฐ CI/CD ๊ตฌ์ถ
section ๊ธฐ๋ฅ ๊ฐ์
11/13-11/14: ๐จ ์ค์๊ฐ ์ ์/๋ญํน ํ์
: ํด์ฆ ๊ฒฐ๊ณผ ํ๋ฉด ๊ฐ์
: ๐ป API ๋ฌธ์ํ (Swagger/TSDoc)
: ๐ง staging ํ๊ฒฝ ๊ตฌ์ถ
section ํตํฉ ๋ฐ ํ
์คํธ
11/14: ๐ป Docker ์ปจํ
์ด๋ ์ค์
: ํ๊ฒฝ๋ณ์ ๋ถ๋ฆฌ
: ๐ 3์ฃผ์ฐจ ํตํฉ
: ์ค์๊ฐ ํด์ฆ ์งํ ํ
์คํธ
: ๋จ์ผ ์ฌ์ฉ์ ํด์ฆ ํ์ด ๊ฒ์ฆ
section ๋ฐ๋ชจ ๋ฐ ํ๊ณ
11/15: ๐ 3์ฃผ์ฐจ ๋ฐ๋ชจ๋ฐ์ด
11/16: ๐ง 3์ฃผ์ฐจ ๋ชจ๊ฐ๊ธ
- ํผ๋ ํจํด์ ํตํ ํด์ฆ ์งํ ๋จ๊ณ๋ณ ์ํ ๊ด๋ฆฌ ์์คํ ๊ตฌ์ถ
- CI/CD ํ์ดํ๋ผ์ธ ๊ตฌ์ฑ์ ํตํ ์ง์์ ์ธ ๋ฐฐํฌ ํ๊ฒฝ ๋ง๋ จ
- ํ๋ก ํธ์๋
- ํผ๋ ํจํด ๋์
- ์ค์๊ฐ ํ์ด๋จธ ๊ตฌํ
- ํ ์คํธ ์ฝ๋ ํ๊ฒฝ ๊ตฌ์ถ
- ๋ฐฑ์๋
- ์ํ์ ์ด๋ฒคํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ํด์ฆ ์งํ ์ฒ๋ฆฌ ๊ตฌํ
- DevOps
- Docker, GItHub Actions๋ฅผ ํตํ CI/CD ํ๊ฒฝ ๊ตฌ์ถ
- ํ ์ค์ ํผ๋ ํจํด์ ํด์ฆ ์ํ๊ด๋ฆฌ์ ์ ์ฉํ ์ ์์๊น?
- ํผ๋ ํจํด์ผ๋ก ํด์ฆ์กด ์ํ๊ด๋ฆฌ ํ๊ธฐ
- ๐ย ํ ์คํธ ์ฝ๋๋ ์ ์์ฑํด์ผ ํ ๊น์? ํนํ ํ๋ก ํธ์๋์์?
- SSL ์ธ์ฆ์ ๋ฐ๊ธ ๋ฐ HTTPS ์ ์ฉํ๊ธฐ
- Github Action์ผ๋ก Nginx์ ์ ์ ํ์ผ ๋ฐฐํฌํ๊ธฐ
- github page๋ฅผ ์ด์ฉํ์ฌ ์ ์ ํ์ด์ง ๋ฐฐํฌ
- Github Action์ผ๋ก ๋์ปค ์ด๋ฏธ์ง Web Server ๋ฐฐํฌํ๊ธฐ
- ์น์์ผ + ๋ฆฌ๋ฒ์ค ํ๋ก์(์์ง์์ค)
timeline
title 4์ฃผ์ฐจ (11/17 - 11/23)
section ์ด๊ธฐ ๊ตฌํ
11/17-11/20: ๐จ useTimer, useQuizZone ํ
๋ถ๋ฆฌ
: useWebSocket ์ปค์คํ
ํ
๊ตฌํ
: ๐ป 10์ธ ๋์์ ์ ์ฒ๋ฆฌ ๋ก์ง
: ์ฐธ์ฌ์ ์ํ ๊ด๋ฆฌ ๊ฐ์
: ๐ค ์ ๋
๋ํ๋ ๊ฐ์ธ ๋ฉํ ๋ง
section ์ํ ๊ด๋ฆฌ
11/17-11/21: ๐จ ํด์ฆ์กด ํ์
์์คํ
์ ์
: ์ํ ๋จธ์ ๊ธฐ๋ฐ ์ด๋ฒคํธ ์ฒ๋ฆฌ
: ๐ป ํด์ฆ์กด ๋ฆฌํฌ์งํ ๋ฆฌ ๋ฆฌํฉํ ๋ง
: ๋ฐฉ์ฅ ๊ธฐ๋ฐ ๊ถํ ์์คํ
: ๋ฐฉ์ฅ-์ฐธ์ฌ์ ๊ถํ ํ
์คํธ
section ํ
์คํธ ๋ฐ ๊ฐ์
11/20-11/21: ๐จ useTimer/useQuizZone ํ
์คํธ
: ์ปค๋ฅ์
๋น์ ์ ์ข
๋ฃ ์ฒ๋ฆฌ
: ๐ป ํด์ฆ ์ ๋ต ์ ์ถ ๋ก๊น
: ๋ค์ค ์ฌ์ฉ์ ์ฐ๊ฒฐ ๊ด๋ฆฌ ๊ฐ์
: ๐ฅ ์ ๋
ํ๋ฏผ๋, ์ ๋น๋ ๋ฉํ ๋ง(11/20)
: ๐ฅ ์ ๋
ํ์ฐ๋, ์คํ๋ ๋ฉํ ๋ง(11/21)
section ์์คํ
์์ ํ
11/20-11/21: ๐จ WebSocket ๋ฉ์์ง ํ ๊ตฌํ
: base64 ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ ์ฒ๋ฆฌ
: ๐ป ๋์์ฑ ์ฒ๋ฆฌ ๊ฒ์ฆ
: ๐ง Docker ๋ฐฐํฌ ํ๊ฒฝ ๊ตฌ์ถ
: ๐ 4์ฃผ์ฐจ ํตํฉ ๋ฐ ํ
์คํธ
: ๋ค์ค ์ฌ์ฉ์ ํด์ฆ ์งํ ํ
์คํธ
section ๋ฐ๋ชจ ๋ฐ ํ๊ณ
11/22: ๐ 4์ฃผ์ฐจ ๋ฐ๋ชจ๋ฐ์ด
11/23: ๐ง 4์ฃผ์ฐจ ๋ชจ๊ฐ๊ธ
- ๋จ์ผ ์ฌ์ฉ์ ๊ธฐ๋ฅ์ ๋ค์ค ์ฌ์ฉ์ ํ๊ฒฝ์ผ๋ก ํ์ฅ.
- ๋ฐฑ์๋ ๋ฆฌํํ ๋ง์ ํตํ ์ค์๊ฐ ์ํ ๋๊ธฐํ์ ๋ฉ์์ง ์ฒ๋ฆฌ ์์ ์ฑ ํ๋ณด
- ์ปค์คํ ํ ์ฌ์ค๊ณ๋ก ์ฝ๋ ์ฌ์ฌ์ฉ์ฑ ํฅ์.
- ํ๋ก ํธ์๋
- ํด์ฆ์กด ์ํ ๊ด๋ฆฌ ์ปค์คํ ํ ๋ฆฌํฉํ ๋ง
- ์น์์ผ ์ฐ๊ฒฐ ์ค์๊ฐ ๋๊ธฐํ ๊ฐ์
- ๋ฐฉ์ฅ/ ์ฐธ์ฌ์ ๊ถํ ์์คํ ๊ตฌํ
- ๋ฐฑ์๋
- ๋ค์ค ์ฌ์ฉ์ ํด์ฆ ์งํ ์ฒ๋ฆฌ๋ฅผ ์ํ ๊ธฐ๋ฅ ๋ฐ ๊ตฌ์กฐ ํ์ฅ
- ์ฌ์ฉ์ ์ฌ์ฐ๊ฒฐ ์ฒ๋ฆฌ ๋ก์ง ๊ตฌํ
- DevOps
- ๋ฐฐํฌ ์์ ์ฑ ํ๋ณด๋ฅผ ์ํ Staging ํ๊ฒฝ ๊ตฌ์ถ
- ํ ์คํธ๋ฅผ ์ํ ์คํ ์ด์ง ํ๊ฒฝ ๊ตฌ์ถ
- useReudcer๋ฅผ ํตํ ํด์ฆ ์ํ๊ด๋ฆฌ ์ปค์คํ ํ ๋ฆฌํฉํ ๋ง
- ๋ค์ค ์ฌ์ฉ์ ๊ธฐ๋ฅ ํ์ฅ ์ค๊ณ
- ํด์ฆ์กด ์ํ๊ด๋ฆฌ ์ปค์คํ ํ ์ ๋ฆฌํฉํ ๋ง ๊ณผ์ ์ ๋์๋ณด๋ฉฐ
- Claude ์จ์ ๋ฆฌํํ ๋ง์ ๋ํด์ ์ ๋์ ํ๊ฐ ํด๋ณด๊ธฐ
- ๋ชจ๋๋ฆฌ์์ Redis๊ฐ ํ์ํ ๊น?
- API ์๋ฒ์ socket ์๋ฒ์ ์ํคํ ์ฒ์ ๋ถ๋ฆฌ
- ์น์์ผ ์๋ฒ ์ค์ผ์ผ์์
- Nest Logger
timeline
title 5์ฃผ์ฐจ (11/24 ~ 11/28)
section ์น์์ผ ์ต์ ํ
11/24-11/25: ๐ป WebSocket ์ปค์คํฐ๋ง์ด์ง
: play gateway ๋ฆฌํฉํ ๋ง
: ์ํฐํฐ ๋ถ๋ฆฌ ๋ฐ ์ฐ๊ฒฐ ๋ก์ง ๊ฐ์
section ์ฑํ
๊ธฐ๋ฅ ๊ตฌํ
11/25-11/26: ๐ป ์ฑํ
๋ชจ๋ ์ถ๊ฐ
: ์ฑํ
์๋น์ค ํตํฉ
: ํด์ฆ ์ ์ถ/์งํ ์ฒ๋ฆฌ ๊ฐ์
section UI/UX ๊ฐ์
11/26-11/27: ๐จ ํด์ฆ์กด ์
์ฅ ์ฒ๋ฆฌ ์๋ฌ ํธ๋ค๋ง
: ์ ํจ์ฑ ๊ฒ์ฌ ๋ฌธ๊ตฌ ๋ฐ ๊ธ์ ์ ์ ํ ์ถ๊ฐ
: ๊ฒฐ๊ณผ ํ์ด์ง ๋ ์ด์์ ๊ฐ์
: ๐ฅ ํ ๋ฉํ ๋ง
section DB ์ฐ๋ ๋ฐ ํตํฉ
11/27-11/28: ๐พ ์ฑํ
์๋น์ค ์ข
๋ฃ ์ฒ๋ฆฌ ๊ตฌํ
: ๐ป ํด์ฆ์กด ์ปจํธ๋กค๋ฌ ์ฑํ
์๋น์ค ํตํฉ
: ๐ ์ถฉ๋ UI ์์ ๋ฐ ํ
์คํธ
section ๋ฐ๋ชจ ๋ฐ ํ๊ณ
11/28: ๐ 5์ฃผ์ฐจ ๋ฐ๋ชจ๋ฐ์ด
11/28: ๐ง 5์ฃผ์ฐจ ๋ชจ๊ฐ๊ธ
- ์ฑ๋ฅ ํ์ธ์ ์ํ ๋ถํํ ์คํธ
- ์ค์๊ฐ ์ฑํ ๊ณผ ์์ ์์คํ ์ถ๊ฐ๋ก ์๋น์ค ์์ฑ๋ ํฅ์.
- ํ๋ก ํธ์๋
- ํด์ฆ์กด ์ ์ฅ ๋ฐ ์งํ ๊ณผ์ ์์์ ์๋ฌ ํธ๋ค๋ง
- ์ฑํ UI ๊ตฌํ ๋ฐ ์ ์ฒด ๋ ์ด์์ ๊ฐ์
- ํด์ฆ ์ ์ถ ํ์ด์ง๋ณ ์์ UI ๊ตฌํ
- ๋ฐฑ์๋
- WsAdapter ์ปค์คํฐ๋ง์ด์ง
- ํด์ฆ ์งํ ์ค ์ฌ์ฉ์ ์ํธ ์์ฉ์ ์ํ ๊ธฐ๋ฅ ์ถ๊ฐ
- ๋ฌธ์ ๋ณ ์ ์ฐฉ์ ์ ์ถ ์์ ์ฐ์ ๊ตฌํ
- ํด์ฆ ๋ชฉ๋ก ๊ด๋ฆฌ๋ฅผ ์ํ RDB ์ ์ฉ
- ์ฑํ ์ด๋ฒคํธ ์ฒ๋ฆฌ ๊ธฐ๋ฅ ๊ตฌํ
- ์ธํ๋ผ
- Production, Staging MySQL ํ๊ฒฝ ๊ตฌ์ถ
- ์ค์๊ฐ ๋ชจ๋ํฐ๋ง์ ์ํ WebHook ์ฐ๋
- ErrorBoundary์ Suspense๋ฅผ ํตํด ์๋ฌ ์ฒ๋ฆฌํ๊ธฐ
- ๋ฆฌ์กํธ Memoization์ ํตํ ์ต์ ํ๋ฅผ ํ๋ ค๋ฉด?
- ๋ถํ ํ ์คํธ ์๋
- NCP ์๋ฒ ๋ชจ๋ํฐ๋ง with Slack
- WsAdapter์ ์ธ์ ์ ์ฉํ๊ธฐ
- ์๋ฒ ํด๋ผ์ด์ธํธ ์๊ฐ ๋๊ธฐํ
timeline
title 6์ฃผ์ฐจ (11/29 ~ 12/03)
section ๋ง๋ฌด๋ฆฌ ์์
11/29-11/30: ๐ ๋ฆฌ๋๋ฏธ ๋ฐ ๋ฌธ์ ์
๋ฐ์ดํธ
: ์ํคํ
์ฒ, ๊ธฐ๋ฅ ์ค๋ช
์ถ๊ฐ
: ๋ก๊ณ ๋ฐ UI ๊ฐ์
section ์ฌ์ฉ์ ํผ๋๋ฐฑ ๋ฐ์
12/01-12/02: ๐จ ์ฑํ
๊ฒฐ๊ณผ ํ์ด์ง ๊ฐ์
: ํด์ฆ์กด ์์ฑ ํ์ด์ง ์ ํจ์ฑ ๊ฒ์ฆ ๊ฐํ
: ์ธํฐํ์ด์ค ๋์์ธ ๊ฐ์
: WebSocket ์ฌ์ฐ๊ฒฐ ๋ก์ง ๊ฐํ
section ์ต์ข
์ฝ๋ ๋ฆฌํฉํ ๋ง
12/02-12/03: ๐ง ์ฑํ
์๋น์ค ๋ฐ ๋ฉ๋ชจ๋ฆฌ ๋ ํฌ์งํ ๋ฆฌ ๊ฐ์
: ํด์ฆ์กด ์
์ฅ ์ฒ๋ฆฌ ์๋ฌ ํธ๋ค๋ง ์์
: UI ์ถฉ๋ ์ด์ ํด๊ฒฐ
section ์ต์ข
์์ ํ
12/03: ๐ป ์น์์ผ ์ฌ์ฐ๊ฒฐ ์ฒ๋ฆฌ ๋ณด์
: ๋ฉ์์ง ํ ์์คํ
์์ ํ
: UI ๋ฒ๊ทธ ์์
: ๐ ์ต์ข
๋ฐ๋ชจ ์ค๋น
- ํ๋ก ํธ์๋
- ์ฌ์ฐ๊ฒฐ ์ฒ๋ฆฌ ๋ก์ง ๊ฐ์
- ์น์์ผ ์ข ๋ฃ ์๋๋ฆฌ์ค ์ฒ๋ฆฌ ๋ณด์
- ํด์ฆ์กด ์์ฑ ์ ์ ํจ์ฑ ๊ฒ์ฆ ๊ฐํ
- UI/UX ๊ฐ์ ๋ฐ ์ฑํ ,๊ฒฐ๊ณผ ํ์ด์ง ๋ ์ด์์ ์ต์ ํ
- ์๋ฌ ๋ฉ์์ง ๋ฐ ์๋ด ๋ฌธ๊ตฌ ๊ฐ์
- ๋ฐฑ์๋
- ์ฑํ ์๋น์ค ์ํคํ ์ฒ ๊ฐ์
- ๋ฉ๋ชจ๋ฆฌ ๋ ํฌ์งํ ๋ฆฌ CRUD ๋ก์ง ์ต์ ํ
- ํด์ฆ์กด ์ปจํธ๋กค๋ฌ ์๋ฌ ํธ๋ค๋ง ๊ฐํ
- ์ ์ฐฉ์ ์ ์ถ์ ๊ณ ๋ คํ ์ต์ข ์์ ์ฐ์
- ๋ ํฌ์งํ ๋ฆฌ ํด๋ก
git clone https://github.com/boostcampwm-2024/web08-BooQuiz.git
- ํจํค์ง ๋งค๋์ ์ค์น (pnpm ์ฌ์ฉ) ๋ฐ ํจํค์ง ๋ค์ด๋ก๋
npm install -g pnpm
pnpm install
- Frontend ํ๊ฒฝ ๋ณ์ ์ถ๊ฐ
echo -e "VITE_API_URL=http://localhost:3000\nVITE_WS_URL=ws://localhost:3000" > /apps/frontend/.env.development
- ํ๋ก์ ํธ ์คํํ๊ธฐ(๊ฐ๋ฐ ํ๊ฒฝ)
pnpm run start
/
โโโ frontend/ # ํ๋ก ํธ์๋ ์ ํ๋ฆฌ์ผ์ด์
โ โโโ src/
โ โ โโโ blocks/ # ํ์ด์ง๋ณ ์ฃผ์ ์ปดํฌ๋ํธ
โ โ โโโ components/ # ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ปดํฌ๋ํธ
โ โ โโโ hook/ # ์ปค์คํ
ํ
โ โ โโโ pages/ # ํ์ด์ง ์ปดํฌ๋ํธ
โ โโโ ...
โ
โโโ backend/ # ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์
โ โโโ src/
โ โ โโโ common/ # ๊ณตํต ์ ํธ๋ฆฌํฐ
โ โ โโโ core/ # ํต์ฌ ๊ธฐ๋ฅ
โ โ โโโ quiz-zone/ # ํด์ฆ์กด ์ํ ์ ๋ณด ๊ด๋ฆฌ
โ โ โโโ quiz/ # ํด์ฆ CRUD
โ โ โโโ play/ # ์ค์๊ฐ ํด์ฆ ๊ด๋ฆฌ
โ โโโ ...
โโโ ...
J004 ๊ฐ์คํ | J074 ๊นํ์ฐ | J086 ๋์ ๋น | J175 ์ด๋ํ | J217 ์ ํ๋ฏผ |
---|---|---|---|---|
- GitLab flow๋ฅผ ์ฐจ์ฉํ์ฌ ๋ธ๋์น๋ฅผ ๊ด๋ฆฌํ์์ต๋๋ค.
gitGraph
commit
branch develop
checkout develop
commit
branch "feature/#issue"
checkout "feature/#issue"
commit
commit
checkout develop
merge "feature/#issue"
checkout main
merge develop
- ์ด์ ์์ฑ ๋๋ ๊ธฐ์กด ์ด์ ํ์ธ
- feature/[๊ธฐ๋ฅ๋ช ] ๋ธ๋์น ์์ฑ
- ๊ฐ๋ฐ ๋ฐ ํ ์คํธ ์๋ฃ
- PR ์์ฑ ๋ฐ ๋ฆฌ๋ทฐ ์์ฒญ