-
-
Notifications
You must be signed in to change notification settings - Fork 3
Conventions
์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ํ๋ฉด์ ํ์ ๊ฐ์ ํฉ์ํ ๊ฐ๋ฐ ๊ด์ต์ ๋ฌธ์ํํฉ๋๋ค. ํญ์ ์ต์ ์ ์ํ๋ฅผ ์ ์งํ๊ธฐ ์ํด์ ํ์ ๋ชจ๋ ๋ ธ๋ ฅํด์ฃผ์ จ์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
-
ํ๋ก์ ํธ ๋ณด๋์์
To Do์ํ์ ํฐ์ผ์ ์ ํํ๊ณ ๋ณธ์ธ์๊ฒ ํ ๋นํฉ๋๋ค. -
ํ๋ก์ ํธ ์ค์
- ๋จผ์ ํ๋ก์ ํธ ์ค์ ๊ฐ์ด๋๋ฅผ ์๋ฃํฉ๋๋ค.
-
๋ธ๋์น ์์ฑ
-
main๋ธ๋์น์์ ์๋ก์ด feature ๋ธ๋์น๋ฅผ ์์ฑํฉ๋๋ค. - ๋ธ๋์น ์ด๋ฆ์๋
-,_์ธ์ ํน์๋ฌธ์ ์ฌ์ฉ์ ์ ํ๋ฉ๋๋ค.
์ฐธ๊ณ ์ด์
-
-
๊ธฐ๋ฅ ๊ตฌํ ๋ฐ ์ปค๋ฐ
- ๋ธ๋์น ๋ด์์ ์์ค ์ฝ๋๋ฅผ ์์ ํ๊ณ ์ปค๋ฐํฉ๋๋ค.
- ๋ณ๊ฒฝ์ด ๋ชจ๋ ์๋ฃ๋๋ฉด ํฌํฌ๋ฐ์ ๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ธ๋์น๋ฅผ ํธ์ํฉ๋๋ค.
-
ํ ์คํธ ์์ฑ
- ๊ธฐ์ฌํ ์ฝ๋๊ฐ ์ ์์ ์ผ๋ก ๋์ํ๋์ง ํ์ธํ ์ ์๋ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค.
-
PR ์์ฑ
-
Pull Requests ํ์ด์ง์์ ์๋ก์ด PR์ ์์ฑํฉ๋๋ค.
-
PR์ด ๋ฑ๋ก๋ ์ด์์ ์ฐ๊ด๋์ด ์๋ค๋ฉด, PR ์์ฑ ํ ์ค๋ฅธ์ชฝ ์ฌ์ด๋๋ฐ์
Developmentํญ๋ชฉ์์ ํด๋น ์ด์๋ฅผ ์ ํํด ์ฐ๊ฒฐํด์ฃผ์ธ์.
-
-
PR ๋ฆฌ๋ทฐ ๋ฐ ๋ณํฉ
- ์ต์ ํ ๋ช ์ด์์ ๊ด๋ฆฌ์๊ฐ PR์ ๊ฒํ ํ๊ณ ์ฝ๋ฉํธ๋ฅผ ๋จ๊น๋๋ค.
- ๋ณ๊ฒฝ ์์ฒญ์ด ์์ ๊ฒฝ์ฐ, ์์ ์ ๋ฐ์ํ ํ ๋ค์ ํธ์ํ๊ณ ๋ฆฌ๋ทฐ๋ฅผ ์์ฒญํฉ๋๋ค.
-
์ต์ 1๊ฐ์ ์น์ธ์ ๋ฐ์ ํ
main๋ธ๋์น์ ๋ณํฉ๋ฉ๋๋ค. - ์ดํ ๋ฆด๋ฆฌ์ฆ๋ฅผ ํตํด ๊ธฐ์ฌํ ๋ด์ฉ์ด ๋ฐฐํฌ๋ฉ๋๋ค.
-
src/components์๋์ ํด๋๋ฅผ ๋ง๋ค๊ณ , ๊ทธ ์์ ์ปดํฌ๋ํธ ํ์ผ, ์คํ ๋ฆฌ ํ์ผ, ํ ์คํธ ํ์ผ์ ์์น์ํต๋๋ค. - ํด๋ ์ด๋ฆ, ํ์ผ ์ด๋ฆ, ์ปดํฌ๋ํธ ์ด๋ฆ์ ๋ชจ๋ PascalCase๋ก letter case๋ฅผ ํต์ผํฉ๋๋ค.
- ๋ณ์ ์ด๋ฆ, ํจ์ ์ด๋ฆ, prop ์ด๋ฆ์ ๋ชจ๋ camelCase๋ก letter case๋ฅผ ํต์ผํฉ๋๋ค.
-
index.tsxํ์ผ์ ํตํด์ re-exportํ์ง ์์ต๋๋ค.
โโโ src
โ โโโ components
โ โ โโโ Checkbox
โ โ โ โโโ Checkbox.stories.tsx
โ โ โ โโโ Checkbox.test.tsx
โ โ โ โโโ Checkbox.tsx
- ์ปดํฌ๋ํธ ์ค๊ณ์ ๊ตฌํ์ ๊ตฌ๋ถํด์ Pull Request๋ฅผ ์ ์ถํฉ๋๋ค. ๋ฐ๋์งํ ์ปดํฌ๋ํธ API์ ๋ํ ์ฌ์ ํฉ์๋ฅผ ์งํํจ์ผ๋ก์จ ์๋ฑํ ๊ตฌํ์ ๋ฐฉ์งํ๊ธฐ ์ํจ์ ๋๋ค.
- PR ๋ณํฉ์ ํ๊ธฐ ์ํด์๋ ์ต์ 1๋ช ์ ๋๋ฃ ๊ฐ๋ฐ์๋ก๋ถํฐ ์น์ธ์ ๋ฐ์์ผ ํ์ง๋ง, ํ์ง ํฅ์์ ์ํด์ ๊ธด๊ธ ๊ฑด์ด ์๋๋ผ๋ฉด 2๊ฐ์ ์น์ธ์ ๋ฐ๋ ๊ฒ์ด ๊ถ์ฅ๋ฉ๋๋ค.
- [Proposed] "Resolve conversation" ๋ฒํผ์ ์ฝ๋ ๊ฒํ ์๊ฐ ํผ๋๋ฐฑ์ด ๋ณธ์ธ์ด ์๋ํ ๋๋ก ์กฐ์น๋์๋์ง ํ์ธํ๋ ์ฐจ์์์ ๋๋ฆ ๋๋ค. ์ฝ๋ ์์ฑ์๊ฐ ์์๋ก Resolved ํ์ํ ์ ๋ถํ์ํ ์คํด๊ฐ ์๊ธธ ์ ์์ต๋๋ค.
- ํจ์ ์ปดํฌ๋ํธ ์์ฑํ ๋๋
functionํค์๋๋ก ์ ์ธํด์ฃผ์ธ์. - ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์์ฑํ ๋๋ ํ์ดํ ํจ์๋ฅผ ์ ์ธ ํ์ ๋ณ์์ ํ ๋นํด์ฃผ์ธ์.
- ์คํ ๋ฆฌ ์ ๋ชฉ์ด ์ปดํฌ๋ํธ ๊ฒฝ๋ก๋ฅผ ํตํด์ ์๋์ผ๋ก ์ ์ถ๋ ์ ์๋๋ก
title์์ฑ์ ๊ฐ์ ์๋ตํด์ฃผ์ธ์. ๋ฌธ์์ด๋ก ์ง์ ๋ช ์ํ๋ฉด ํ์ ์์ ํ์ง ์๊ณ , ์ปดํฌ๋ํธ ์ด๋ฆ์ ๋ฐ๊ฟ ๋ ์ฑํฌ๊ฐ ๊นจ์ง๊ธฐ ์ฝ์ต๋๋ค. - ์ฌ๋ฌ ์คํ ๋ฆฌ์ ๊ฑธ์ณ์ ํ์ํ args๋ ์คํ ๋ฆฌ ์์ค์์ ์ค๋ณตํ์ง ๋ง์๊ณ ์ปดํฌ๋ํธ ์์ค์์ ์ง์ ํด์ฃผ์ธ์.
- ํ ์คํธ ํ์ผ์ ๋ณ๋์ ๋๋ ํ ๋ฆฌ์ ์ค์ํ ํ์ง ์๊ณ ์ ํ๋ฆฌ์ผ์ด์ ํ์ผ ๋ฐ๋ก ์์ ๋ก๋๋ค.
- ๋จ์ํ ํ
์คํธ ๊ตฌ์กฐ๋ฅผ ์ํด์ ํ
์คํธ ๋์ ๋ชจ๋์ ๊ตฌ์กฐ๊ฐ ๋ณต์กํ์ง ์๋ค๋ฉด
describe()-it()๋์ ์test()๋ฅผ ์๋๋ค. - ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํฌ ๋๋
fireEvent๋์ ์@testing-library/user-eventํจํค์ง๋ฅผ ์ฌ์ฉํด ์ฃผ์ธ์. ๋ธ๋ผ์ฐ์ ์ ์ฅ์ด ์๋ ์ฌ์ฉ์ ์ ์ฅ์์ ํ ์คํธ๋ฅผ ์์ฑํ๊ธฐ ์ํจ์ ๋๋ค. - ํ ์คํธ ์ ๋ชฉ์ ํ๊ตญ์ด ์ฌ์ฉ์๊ฐ ์ฝ๊ฒ ๋ช ์ธ๋ฅผ ํ์ ํ๊ธฐ ์ฝ๋๋ก ํ๊ธ๋ก ์์ฑํด์ฃผ์ธ์.
- ํญ์ ์์กด์ฑ์ ์ต์ ์ํ๋ก ์ ์งํ๊ธฐ ์ํด์ Dependabot์ ์ฝ๋ ์ ์ฅ์์ ์ค์ ํด๋์์ต๋๋ค.
- Dependabot์ด ์ฌ๋ฆฐ PR์ ๋ฆ์ง ์๊ฒ ๊ฒํ ๋ฐ ๋ณํฉํ๊ณ ์๋ก์ด ๋ฒ์ ์ด ์ผ์ผํค๋ breaking changes๋ฅผ ๋์ํ๋ ์์ ์ ํ ๊ฐ๋ฐ์ ๋ชจ๋์ ๊ณต๋ ์ฑ ์์ ๋๋ค.
- Dependabot์ด ์ฌ๋ฆฐ PR์ ๋ฐ๋์ PR ์ฝ๋ฉํธ๋ฅผ ํตํด์ Dependabot์๊ฒ ์ํ์๋ ์์ ์ ์์ผ์ฃผ์ธ์. ์ง์ ์์ ํ์๋ฉด Dependabot์ ํด๋น PR์ ๋ ์ด์ ์๋์ผ๋ก ๊ด๋ฆฌํด์ฃผ์ง ์์ต๋๋ค.
main ๋ธ๋์น์ ํ์ง ๊ธฐ์ค์ ๋ฏธ๋ฌํ๋ ์ฝ๋๊ฐ ์ ์ ์ด ๋์ง ์๋๋ก PR์ ์ฌ๋ฆฌ์๋ฉด ์๋์ผ๋ก ํ์ง ๊ฒ์ฌ๊ฐ ์งํ๋๊ณ ์คํจํ ๊ฒฝ์ฐ ๋ณํฉ์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๊ฐ ํ์ง ๊ฒ์ฌ๋ ๊ฐ๋ฐ์๊ฐ ๋ก์ปฌ ํ๊ฒฝ์์ ์ง์ ์งํํ์ค ์๋ ์์ต๋๋ค.
Prettier๋ฅผ ํตํด์ ์ผ๊ด์ ์ธ ์ฝ๋ ํฌ๋ฉงํ ์ ์ ์งํ๊ณ ์์ต๋๋ค. VSCode ์ฌ์ฉ์ ๋ถ๋ค์ Prettier ์ต์คํ ์ ์ ์ฐ์๋ฉด ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ์๋์ผ๋ก ์ฝ๋๋ฅผ ํฌ๋ฉงํ ํ ์ ์์ด์ ํธํ๋ ์ถ์ฒ๋๋ฆฝ๋๋ค.
Prettier options ๋ ๊ธฐ๋ณธ ์ค์ ๊ฐ์ผ๋ก ํด์ฃผ์๊ธธ ๋ฐ๋๋๋ค.
ESLint๋ฅผ ํตํด์ ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๊ณ ์์ต๋๋ค. ๋ฆฐํ ๊ท์น์ ์๋ฐํ๊ณ ์๋ ์ฝ๋๊ฐ ์๋์ง ํ์ธํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$ bun run lintTypeScirpt๋ฅผ ํตํด์ ์ ์ ํ์ ๊ฒ์ฌ๋ฅผ ํ๊ณ ์์ต๋๋ค. ํ์ ์ค๋ฅ๊ฐ ์๋์ง ํ์ธํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.
$ bunx tsc