Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
Evan Suhyeong Lee edited this page Apr 17, 2025 · 36 revisions

Note

긍정적인 ν˜‘μ—… ν™˜κ²½μ„ μ‘°μ„±ν•˜κ³  νŒ€μ› λͺ¨λ‘κ°€ 쒋은 κ²½ν—˜μ„ ν•˜κΈ° μœ„ν•΄μ„œ νŒ€ κ·œλ²”μ„ λ¬Έμ„œν™”ν•˜κ³  λ‹€ 같이 λ”°λ₯΄κ³ μž ν•©λ‹ˆλ‹€. νŒ€ κ·œλ²”μ€ νŒ€μ˜ 문화와 μž‘μ—… 방식을 ν˜•μ„±ν•˜λ©°, 보톡 λ‹€μŒκ³Ό 같은 μš”μ†Œλ“€μ΄ ν¬ν•¨λ©λ‹ˆλ‹€.

  1. μ˜μ‚¬μ†Œν†΅ 방식: νŒ€μ›λ“€μ΄ 정보λ₯Ό μ–΄λ–»κ²Œ κ³΅μœ ν•˜κ³  μ†Œν†΅ν•˜λŠ”μ§€μ— λŒ€ν•œ κ·œμΉ™.
  2. μ±…μž„κ°: 각 νŒ€μ›μ΄ μžμ‹ μ˜ μ—­ν• κ³Ό μ±…μž„μ„ μ–΄λ–»κ²Œ 이행할 것인지에 λŒ€ν•œ κΈ°λŒ€.
  3. κ°ˆλ“± ν•΄κ²°: νŒ€ λ‚΄μ—μ„œ κ°ˆλ“±μ΄ λ°œμƒν–ˆμ„ λ•Œ 이λ₯Ό μ–΄λ–»κ²Œ ν•΄κ²°ν•  것인지에 λŒ€ν•œ μ ‘κ·Ό 방식.
  4. κ²°μ •-making: νŒ€μ΄ μ˜μ‚¬ 결정을 λ‚΄λ¦¬λŠ” 방법, 즉 ν•©μ˜, νˆ¬ν‘œ λ˜λŠ” λ¦¬λ”μ˜ κ²°μ • λ“±.
  5. μ‹œκ°„ 관리: 회의의 μ‹œκ°„, 마감일 μ€€μˆ˜ λ“± μ‹œκ°„μ— λŒ€ν•œ κ·œλ²”.

정기적인 회고λ₯Ό ν†΅ν•΄μ„œ νŒ€ κ·œλ²”μ„ κ³„μ†ν•΄μ„œ 쒋은 λ°©ν–₯으둜 μ—…λ°μ΄νŠΈν•΄λ‚˜κ°”μœΌλ©΄ μ’‹κ² μŠ΅λ‹ˆλ‹€.

  • PM이 κ΅¬ν•΄μ§ˆ λ•Œ κΉŒμ§€ λͺ¨λ‘κ°€ PMμ΄λΌλŠ” λ§ˆμŒκ°€μ§μœΌλ‘œ ν”„λ‘œμ νŠΈμ— μž„ν•΄μ£Όμ„Έμš”. 슀슀둜 티켓을 μƒμ„±ν•˜κ³  μš”κ΅¬ 사항을 μž‘μ„±ν•΄μ£Όμ„Έμš”.
  • 100% 원격/λΉ„λŒ€λ©΄μœΌλ‘œ μ§„ν–‰λ˜λŠ” ν”„λ‘œμ νŠΈμΈ 만큼 적극적인 μžμ„Έλ‘œ μ†Œν†΅ν•˜λŠ” 것이 λ„ˆλ¬΄ λ„ˆλ¬΄ μ€‘μš”ν•©λ‹ˆλ‹€. 방해라고 μƒκ°ν•˜μ§€ λ§ˆμ‹œκ³  μ—¬λŸ¬ 채널을 ν†΅ν•΄μ„œ ν™œλ°œν•˜κ²Œ μ†Œν†΅ν•΄μ£Όμ„Έμš”.
    • Better to Over-communicate than Under
    • Better to open communication than to send DMs

ν”„λ‘œμ νŠΈ μ„€μ •

둜컬 μ‹€ν–‰ ν™˜κ²½ μ„€μ •

  1. Bun μ„€μΉ˜ν•˜κΈ°
  2. 리포지토리 κ΄€λ¦¬μžμ—κ²Œ μ΄ˆλŒ€λ₯Ό μš”μ²­ν•˜κ³  κΆŒν•œμ„ νšλ“ν•œ 이후, 리포지토리λ₯Ό ν΄λ‘ ν•©λ‹ˆλ‹€.
  3. ν„°λ―Έλ„μ—μ„œ μ•„λž˜ λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€:
cd path/to/clone-repo
# μ˜μ‘΄μ„± μ„€μΉ˜
bun install
# Storybook μ‹€ν–‰ (λ””μžμΈ μ‹œμŠ€ν…œ κΈ°μ—¬ μ‹œ)
bun run sb # or bun run storybook
# λ§ˆμΌ€νŒ… μ›Ήμ‚¬μ΄νŠΈ μ‹€ν–‰ (λ§ˆμΌ€νŒ… μ›Ήμ‚¬μ΄νŠΈ κΈ°μ—¬ μ‹œ)
bun run dev

μ½”λ“œ κΈ°μ—¬ κ°€μ΄λ“œ

  1. ν”„λ‘œμ νŠΈ λ³΄λ“œμ—μ„œ To Do μƒνƒœμ˜ 티켓을 μ„ νƒν•˜κ³  λ³ΈμΈμ—κ²Œ ν• λ‹Ήν•©λ‹ˆλ‹€.

  2. ν”„λ‘œμ νŠΈ μ„€μ •

  3. 브랜치 생성

    • main λΈŒλžœμΉ˜μ—μ„œ μƒˆλ‘œμš΄ feature 브랜치λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.
    • 브랜치 μ΄λ¦„μ—λŠ” -, _ μ™Έμ˜ 특수문자 μ‚¬μš©μ€ μ œν•œλ©λ‹ˆλ‹€.
      참고 이슈
  4. κΈ°λŠ₯ κ΅¬ν˜„ 및 컀밋

    • 브랜치 λ‚΄μ—μ„œ μ†ŒμŠ€ μ½”λ“œλ₯Ό μˆ˜μ •ν•˜κ³  μ»€λ°‹ν•©λ‹ˆλ‹€.
    • 변경이 λͺ¨λ‘ μ™„λ£Œλ˜λ©΄ 포크받은 λ¦¬ν¬μ§€ν† λ¦¬μ˜ 브랜치λ₯Ό ν‘Έμ‹œν•©λ‹ˆλ‹€.
  5. ν…ŒμŠ€νŠΈ μž‘μ„±

    • κΈ°μ—¬ν•œ μ½”λ“œκ°€ μ •μƒμ μœΌλ‘œ λ™μž‘ν•˜λŠ”μ§€ 확인할 수 μžˆλŠ” ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€.
  6. PR 생성

    • Pull Requests νŽ˜μ΄μ§€μ—μ„œ μƒˆλ‘œμš΄ PR을 μƒμ„±ν•©λ‹ˆλ‹€.

    • PR이 λ“±λ‘λœ μ΄μŠˆμ™€ μ—°κ΄€λ˜μ–΄ μžˆλ‹€λ©΄, PR 생성 ν›„ 였λ₯Έμͺ½ μ‚¬μ΄λ“œλ°”μ˜ Development ν•­λͺ©μ—μ„œ ν•΄λ‹Ή 이슈λ₯Ό 선택해 μ—°κ²°ν•΄μ£Όμ„Έμš”.

      PR 이슈 μ—°κ²° μ˜ˆμ‹œ
  7. PR 리뷰 및 병합

    • μ΅œμ†Œ ν•œ λͺ… μ΄μƒμ˜ κ΄€λ¦¬μžκ°€ PR을 κ²€ν† ν•˜κ³  μ½”λ©˜νŠΈλ₯Ό λ‚¨κΉλ‹ˆλ‹€.
    • λ³€κ²½ μš”μ²­μ΄ μžˆμ„ 경우, μˆ˜μ •μ„ λ°˜μ˜ν•œ ν›„ λ‹€μ‹œ ν‘Έμ‹œν•˜κ³  리뷰λ₯Ό μš”μ²­ν•©λ‹ˆλ‹€.
    • μ΅œμ†Œ 1개의 μŠΉμΈμ„ 받은 ν›„ main λΈŒλžœμΉ˜μ— λ³‘ν•©λ©λ‹ˆλ‹€.
    • 이후 릴리즈λ₯Ό 톡해 κΈ°μ—¬ν•œ λ‚΄μš©μ΄ λ°°ν¬λ©λ‹ˆλ‹€.

ν’ˆμ§ˆ 검사

main λΈŒλžœμΉ˜μ— ν’ˆμ§ˆ 기쀀에 λ―Έλ‹¬ν•˜λŠ” μ½”λ“œκ°€ μœ μž…μ΄ λ˜μ§€ μ•Šλ„λ‘ PR을 μ˜¬λ¦¬μ‹œλ©΄ μžλ™μœΌλ‘œ ν’ˆμ§ˆ 검사가 μ§„ν–‰λ˜κ³  μ‹€νŒ¨ν•  경우 병합이 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. 각 ν’ˆμ§ˆ κ²€μ‚¬λŠ” κ°œλ°œμžκ°€ 둜컬 ν™˜κ²½μ—μ„œ 직접 μ§„ν–‰ν•˜μ‹€ μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

Formatting

Prettierλ₯Ό ν†΅ν•΄μ„œ 일관적인 μ½”λ“œ ν¬λ©§νŒ…μ„ μœ μ§€ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. VSCode μ‚¬μš©μž 뢄듀은 Pretteir μ΅μŠ€ν…μ…˜μ„ μ“°μ‹œλ©΄ μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ©΄μ„œ μžλ™μœΌλ‘œ μ½”λ“œλ₯Ό ν¬λ©§νŒ…ν•  수 μžˆμ–΄μ„œ νŽΈν•˜λ‹ˆ μΆ”μ²œλ“œλ¦½λ‹ˆλ‹€.

Linting

ESLintλ₯Ό ν†΅ν•΄μ„œ 잠재적인 문제λ₯Ό λ°œκ²¬ν•˜κ³  보범 사둀λ₯Ό λ”°λ₯΄κ³  μžˆμŠ΅λ‹ˆλ‹€. λ¦°νŒ… κ·œμΉ™μ„ μœ„λ°˜ν•˜κ³  μžˆλŠ” μ½”λ“œκ°€ μžˆλŠ”μ§€ ν™•μΈν•˜λ €λ©΄ λ‹€μŒ λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€.

$ bun run lint

Type Checking

TypeScirptλ₯Ό ν†΅ν•΄μ„œ 정적 νƒ€μž… 검사λ₯Ό ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. νƒ€μž… 였λ₯˜κ°€ μžˆλŠ”μ§€ ν™•μΈν•˜λ €λ©΄ λ‹€μŒ λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•©λ‹ˆλ‹€.

$ bunx tsc

ν”„λ‘œμ νŠΈ ꡬ쑰

  • src/components μ•„λž˜μ— 폴더λ₯Ό λ§Œλ“€κ³ , κ·Έ μ•ˆμ— μ»΄ν¬λ„ŒνŠΈ 파일, μŠ€ν† λ¦¬ 파일, ν…ŒμŠ€νŠΈ νŒŒμΌμ„ μœ„μΉ˜μ‹œν‚΅λ‹ˆλ‹€.
  • 폴더 이름, 파일 이름, μ»΄ν¬λ„ŒνŠΈ 이름은 λͺ¨λ‘ PascalCase둜 letter caseλ₯Ό ν†΅μΌν•©λ‹ˆλ‹€.
  • λ³€μˆ˜ 이름, ν•¨μˆ˜ 이름, prop 이름은 λͺ¨λ‘ camelCase둜 letter caseλ₯Ό ν†΅μΌν•©λ‹ˆλ‹€.
  • index.tsx νŒŒμΌμ„ ν†΅ν•΄μ„œ re-exportν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
β”œβ”€β”€ src
β”‚ β”œβ”€β”€ components
β”‚ β”‚ β”œβ”€β”€ Checkbox
β”‚ β”‚ β”‚ β”œβ”€β”€ Checkbox.stories.tsx
β”‚ β”‚ β”‚ β”œβ”€β”€ Checkbox.test.tsx
β”‚ β”‚ β”‚ └── Checkbox.tsx

ν…ŒμŠ€νŒ…

  • ν…ŒμŠ€νŠΈ νŒŒμΌμ€ λ³„λ„μ˜ 디렉토리에 쀑앙화 ν•˜μ§€ μ•Šκ³  μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 파일 λ°”λ‘œ μ˜†μ— λ‘‘λ‹ˆλ‹€.
  • λ‹¨μˆœν•œ ν…ŒμŠ€νŠΈ ꡬ쑰λ₯Ό μœ„ν•΄μ„œ ν…ŒμŠ€νŠΈ λŒ€μƒ λͺ¨λ“ˆμ˜ ꡬ쑰가 λ³΅μž‘ν•˜μ§€ μ•Šλ‹€λ©΄ describe()-it() λŒ€μ‹ μ— test()λ₯Ό μ”λ‹ˆλ‹€.

μ»¨λ²€μ…˜

  • ν•¨μˆ˜λ₯Ό μž‘μ„±ν•  λ•ŒλŠ” 가급적 ν™”μ‚΄ν‘œ λ¬Έλ²•λ³΄λ‹€λŠ” function ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•˜κΈ°

κ΄€λ ¨ 링크

Clone this wiki locally

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /