Skip to content

Conversation

@joyeeon
Copy link
Collaborator

@joyeeon joyeeon commented May 31, 2025

πŸ“ λ―Έμ…˜ 번호

10μ£Όμ°¨ Misson 1

πŸ“‹ κ΅¬ν˜„ 사항

10μ£Όμ°¨ λ―Έμ…˜ 1

πŸ“Ž μŠ€ν¬λ¦°μƒ·

2025-06-01.012735.mp4

βœ… 체크리슀트

  • Merge ν•˜λ €λŠ” λΈŒλžœμΉ˜κ°€ μ˜¬λ°”λ₯΄κ²Œ μ„€μ •λ˜μ–΄ μžˆλ‚˜μš”?
  • λ‘œμ»¬μ—μ„œ μ‹€ν–‰ν–ˆμ„ λ•Œ μ—λŸ¬κ°€ λ°œμƒν•˜μ§€ μ•Šλ‚˜μš”?
  • λΆˆν•„μš”ν•œ 주석이 μ œκ±°λ˜μ—ˆλ‚˜μš”?
  • μ½”λ“œ μŠ€νƒ€μΌμ΄ μΌκ΄€μ μΈκ°€μš”?

πŸ€” 질문 사항

Copy link
Member

@hyesngy hyesngy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

10μ£Όμ°¨ μ›Œν¬λΆκΉŒμ§€ 정말 κΈ΄ μ—¬μ •μ΄μ—ˆμŠ΅λ‹ˆλ‹€.

κ·Έλ™μ•ˆ λͺ¨λ‘ 고생 λ§ŽμœΌμ…¨μŠ΅λ‹ˆλ‹€! πŸ‘πŸ»πŸ‘πŸ»πŸ‘πŸ» μ§§μ§€ μ•Šμ€ κΈ°κ°„λ™μ•ˆ 의미 μžˆλŠ” μ‹œκ°„μ΄ λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€.

이제 κΈ°λ³Έ μ›Œν¬λΆμ€ λͺ¨λ‘ μ™„μ£Όν•˜μ…¨μ§€λ§Œ, 11-12μ£Όμ°¨ μ›Œν¬λΆλ„ λ„μ „ν•΄λ³΄μ‹œκΈΈ μΆ”μ²œλ“œλ¦½λ‹ˆλ‹€! 11μ£Όμ°¨μ—μ„œλŠ” Vercel을 ν™œμš©ν•œ 배포와 CI/CD ꡬ성을 닀루고, 12μ£Όμ°¨μ—μ„œλŠ” WebSocket을 μ΄μš©ν•œ μ‹€μ‹œκ°„ 톡신과 Cypressλ₯Ό ν™œμš©ν•œ E2E ν…ŒμŠ€νŠΈλ₯Ό λ‹€λ£Ήλ‹ˆλ‹€.

μ•žμœΌλ‘œλ„ κΎΈμ€€νžˆ ν•™μŠ΅ν•˜κ³  μ„±μž₯ν•˜μ‹œκΈΈ μ‘μ›ν•˜λ©°, 데λͺ¨λ°μ΄κΉŒμ§€ ν™”μ΄νŒ… μž…λ‹ˆλ‹€! πŸ‘πŸ»πŸ‘πŸ»πŸ‘πŸ»

Comment on lines +18 to +46
return (
<>
<li key={movie.id} onClick={handleClick} className="relative w-32 group aspect-[2/3] rounded-md overflow-hidden">
{/* <h3>{movie.title}</h3> */}
<img
src={`${imgURL}${movie.poster_path}`}
alt="ν¬μŠ€ν„°"
className="w-full h-full object-cover block group-hover:blur-md"
/>


<div
className="absolute top-0 left-0 w-full h-full opacity-0 group-hover:opacity-100
text-sm/7 text-white flex flex-col items-center justify-center p-4"
>
<h3 className="text-sm">{movie.title}</h3>
<div className="text-xs overflow-hidden text-ellipsis"
style={{
display: "-webkit-box",
WebkitLineClamp: 3,
WebkitBoxOrient: "vertical"
}}>{movie.overview}</div>
</div>
</li>

<DetailModal/>
</>

)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ν˜„μž¬ 각 MovieItemλ§ˆλ‹€ DetailModal을 λ Œλ”λ§ν•˜κ³  μžˆλŠ”λ°, μ΄λŠ” μ˜ν™” λͺ©λ‘λ§ŒνΌ λΆˆν•„μš”ν•œ λͺ¨λ‹¬μ΄ μƒμ„±λ˜μ–΄ μ„±λŠ₯에 μ•…μ˜ν–₯을 μ€λ‹ˆλ‹€. DetailModal을 MovieListλ‚˜ μƒμœ„ μ»΄ν¬λ„ŒνŠΈλ‘œ μ΄λ™μ‹œμΌœ ν•˜λ‚˜λ§Œ λ Œλ”λ§ν•˜λ„λ‘ μˆ˜μ •ν•˜λ©΄ λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰κ³Ό λ Œλ”λ§ μ„±λŠ₯이 크게 κ°œμ„ λ  κ²ƒμž…λ‹ˆλ‹€.
image

Comment on lines +45 to +81
<div className="flex-1">
<label className="flex items-center gap-2 text-sm font-semibold mb-1">
<GrSettingsOption />
μ˜΅μ…˜
</label>
<div className="flex items-center gap-2">
<input
type="checkbox"
id="adult"
checked={includeAdult}
onChange={(e) => setIncludeAdult(e.target.checked)}
/>
<label htmlFor="adult" className="text-sm">
성인 μ½˜ν…μΈ  ν‘œμ‹œ
</label>
</div>
</div>
</div>



<div>
<label className="flex items-center gap-2 text-sm font-semibold mb-1">
<FaGlobe />
μ–Έμ–΄
</label>
<select
className="w-full border border-gray-300 rounded px-3 py-2 focus:outline-none"
value={language}
onChange={(e) => setLanguage(e.target.value)}
>

<option value="ko">ν•œκ΅­μ–΄</option>
<option value="en">μ˜μ–΄</option>
<option value="ja">일본어</option>
</select>
</div>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ν˜„μž¬ SearchCompμ—μ„œ language와 includeAdult μƒνƒœκ°€ 변경될 λ•Œλ§ˆλ‹€ 전체 μ»΄ν¬λ„ŒνŠΈκ°€ λ¦¬λ Œλ”λ§λ©λ‹ˆλ‹€. 이 뢀뢄을 useCallback으둜 μ΅œμ ν™”ν•˜κ³ , μƒνƒœ 변경을 μ΅œμ†Œν™”ν•˜λ©΄ 검색 μ„±λŠ₯이 ν–₯상될 것 κ°™μŠ΅λ‹ˆλ‹€. λ˜ν•œ form 제좜 μ‹œμ—λ§Œ μ‹€μ œ 검색이 이루어지도둝 λ‘œμ§μ„ 뢄리해보면 μ–΄λ–¨κΉŒμš”?

Comment on lines +71 to +80
<select
className="w-full border border-gray-300 rounded px-3 py-2 focus:outline-none"
value={language}
onChange={(e) => setLanguage(e.target.value)}
>

<option value="ko">ν•œκ΅­μ–΄</option>
<option value="en">μ˜μ–΄</option>
<option value="ja">일본어</option>
</select>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ν˜„μž¬ selectμ—μ„œ "ko", "en", "ja" 값을 μ‚¬μš©ν•˜μ§€λ§Œ μ‹€μ œ API ν˜ΈμΆœμ—μ„œλŠ” "ko-KR" ν˜•νƒœλ₯Ό μ‚¬μš©ν•˜μ—¬ λΆˆμΌμΉ˜κ°€ λ°œμƒν•©λ‹ˆλ‹€. μ–Έμ–΄ μ½”λ“œ 맀핑을 일관성 있게 μ²˜λ¦¬ν•˜λ©΄ 검색 결과의 정확성이 ν–₯상될 것 κ°™μŠ΅λ‹ˆλ‹€!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

πŸš€Challenge λ―Έμ…˜μ— 따라 ν”„λ‘œμ νŠΈ μ „μ²΄μ˜ μ„±λŠ₯ μ΅œμ ν™”λ‚˜ UX κ°œμ„ μ—λ„ λ„μ „ν•΄λ³΄μ„Έμš”! μ½”λ“œ ν’ˆμ§ˆ μΈ‘λ©΄μ—μ„œλ„ 쀑볡 제거, μ±…μž„ 뢄리, μ˜ˆμ™Έ 처리 κ°œμ„  등을 톡해 가독성과 μœ μ§€λ³΄μˆ˜μ„±μ΄ 쒋은 μ½”λ“œλ‘œ λ¦¬νŒ©ν† λ§ 해보면 μ–΄λ–¨κΉŒμš” 😊

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants