Skip to content

Latest commit

ย 

History

History
56 lines (41 loc) ยท 4.38 KB

File metadata and controls

56 lines (41 loc) ยท 4.38 KB

deploy

web-catchmind

์บ์น˜๋งˆ์ธ๋“œ ์›น ๊ฒŒ์ž„ ํ”„๋กœ์ ํŠธ

๐ŸŽจ Preview

desktop gif

mobile

๐Ÿ‘€ How To Play

  • ๋‹‰๋„ค์ž„์„ ์ •ํ•œ ํ›„ ์ž…์žฅํ•ด์ฃผ์„ธ์š”
  • ๋ฐฉ์„ ์„ ํƒํ•ด ์ž…์žฅํ•ด์ฃผ์„ธ์š”
    • ๋งŒ์•ฝ ๋ฐฉ์ด ์—†๋‹ค๋ฉด, ์ƒˆ๋กœ์šด ๋ฐฉ์„ ๋งŒ๋“ค์–ด์ฃผ์„ธ์š”
  • 2๋ช… ์ด์ƒ์ด ๋ฐฉ์— ์žˆ๋‹ค๋ฉด, ๊ฒŒ์ž„ ์‹œ์ž‘ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ๊ฒŒ์ž„์„ ์‹œ์ž‘ํ•ด์ฃผ์„ธ์š”
  • ์ถœ์ œ์ž๋Š” ์ œ์‹œ์–ด๋ฅผ ๋ณด๊ณ  ๊ทธ๋ฆผ์„ ๊ทธ๋ ค์ฃผ์‹œ๊ณ , ๋‚˜๋จธ์ง€๋Š” ์ฃผ์–ด์ง„ ๊ทธ๋ฆผ์œผ๋กœ ์ œ์‹œ์–ด๋ฅผ ๋งž์ถฐ์ฃผ์„ธ์š”

๐Ÿ›  Tech Stack

๐Ÿ—๏ธ To do

  • ๋ฌธ์ œ ๋ชฉ๋ก ์ถ”๊ฐ€
  • 1.1.0 ์—…๋ฐ์ดํŠธ
    • ์ƒˆ ๊ฒŒ์ž„๋ชจ๋“œ ์ถ”๊ฐ€
    • ํ”„๋กœ์ ํŠธ, ์ €์žฅ์†Œ ์ด๋ฆ„ ์žฌ๋ช…๋ช…
    • ๋„๋ฉ”์ธ ๊ตฌ๋งค
  • ๋ฆฌํŒฉํ† ๋ง
  • README ๊ฐœ์„ 

๐ŸŒฑ What I learned

  • ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ
    • ๋ชจ๋ฐ”์ผ ๋ฐ˜์‘ํ˜• ๊ฐœ๋ฐœ์— ๋Œ€ํ•ด ๋งŽ์ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค. ํฌ๋กฌ ๊ฐœ๋ฐœ์ž๋„๊ตฌ์˜ ๋””๋ฐ”์ด์Šค ํˆด๋ฐ”์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ์‹ค์ œํ™˜๊ฒฝ์—์„œ๋Š” ์ƒ๋‹จ ์ฃผ์†Œ์ฐฝ์ด๋‚˜ ํ•˜๋‹จ ๋‚ด๋น„๊ฒŒ์ด์…˜๋ฐ”, ํ˜น์€ ๊ฐ€์ƒ ํ‚ค๋ณด๋“œ ํ˜ธ์ถœ๋กœ ์ธํ•ด ๋ทฐํฌํŠธ๊ฐ€ ์˜ˆ์ƒ๊ณผ ๋‹ฌ๋ผ์กŒ๊ณ , ์ด์— ๋”ฐ๋ฅธ ์Šคํฌ๋กค์„ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ๋งŽ์€ ์‹œ๊ฐ„์„ ์Ÿ์•˜์Šต๋‹ˆ๋‹ค.
    • ๊ธฐ๊ธฐ๋ณ„ ํ™˜๊ฒฝ์— ๋Œ€ํ•ด์„œ๋„ ๋งŽ์ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค. ์˜ค์ง ๋ชจ๋ฐ”์ผ ํฌ๋กฌ๋ธŒ๋ผ์šฐ์ €์—์„œ๋งŒ ๋‚˜ํƒ€๋‚˜๋Š” context.clearRect()์ดํ›„์˜ ๋ Œ๋”๋ง์ด ๊นœ๋นก์ด๋Š” ๋ฒ„๊ทธ๋‚˜, ์‚ผ์„ฑ์ธํ„ฐ๋„ท ๋ธŒ๋ผ์šฐ์ €์˜ ๊ฐ•์ œ ๋‹คํฌ๋ชจ๋“œ ์ ์šฉ์œผ๋กœ ์ธํ•œ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ, ์นด์นด์˜คํ†ก ์ธ์•ฑ๋ธŒ๋ผ์šฐ์ €์˜ ๋„ค๋น„๊ฒŒ์ด์…˜๋ฐ”, ๊ฐ€์ƒํ‚ค๋ณด๋“œ ํ˜ธ์ถœ์˜ ์งง์€ ๋”œ๋ ˆ์ด ๋“ฑ ๊ฐœ๋ฐœ์ค‘์—๋Š” ๋ฏธ์ฒ˜ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ–ˆ๋˜ ์ƒํ™ฉ์„ ๋งŒ๋‚˜๋ฉฐ ์‹ค์ œ ํ™˜๊ฒฝ ํ…Œ์ŠคํŠธ์˜ ์ค‘์š”์„ฑ์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.
  • ์บ”๋ฒ„์Šค
    • ์ด๋ฏธ ์ง€์ •๋œ ๊ฒฝ๋กœ๋ฅผ ๊ทธ๋ฆฌ๋Š”๊ฒŒ ์•„๋‹Œ ์‚ฌ์šฉ์ž์— ์ปค์„œ ์›€์ง์ž„์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๊ฒฝ๋กœ๋ฅผ ๊ทธ๋ฆฌ๋Š” ๋ฒ•๊ณผ canvas context์˜ ๋‹ค์–‘ํ•œ ์†์„ฑ๋“ค์— ๋Œ€ํ•ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.
  • ์›น์†Œ์บฃ
    • ๊ธฐ์กด REST API์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ์Œ๋ฐฉํ–ฅ ํ†ต์‹ , ์„œ๋ฒ„์ธก์—์„œ์˜ ๋Šฅ๋™์ ์ธ ๋ฐœ์‹ ์„ ํ™œ์šฉํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค. ์ด์ „์ฒ˜๋Ÿผ ๊ฒŒ์ž„ ์ง„ํ–‰ ๋กœ์ง์„ ํด๋ผ์ด์–ธํŠธ์ชฝ์—์„œ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜, ํด๋ง ๋”ฐ์œ„๋กœ ์ƒํƒœ๋ฅผ ๊ฐฑ์‹ ํ•˜๋Š” ๋Œ€์‹  ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜์˜ ํ†ต์‹ ์„ ์ด์šฉํ•ด ์‰ฝ๊ฒŒ ์•ˆ์ „ํ•œ ๊ฒŒ์ž„๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ์™€ ํด๋ผ์ด์–ธํŠธ๊ฐ„์˜ ์ƒํƒœ ๊ณต์œ ๋ฅผ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์šฉ์ž๊ฒฝํ—˜
    • react์˜ lazy() ๋™์  ๋ถˆ๋Ÿฌ์˜ค๊ธฐ์™€ suspense๋ฅผ ํ†ตํ•ด ์ด์šฉ์ž๊ฐ€ ๋งŽ์€ ์‹œ๊ฐ„์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  hydrate์ค‘์ธ ํ™”๋ฉด์„ ๋ณด๊ฒŒํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.
  • GitHub Action
    • ์ด์ „์˜ ๊ฐ„๋‹จํ•œ npm ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐฐํฌ workflow์™€๋Š” ๋‹ค๋ฅด๊ฒŒ AWS์˜ IAM๊ณผ CodeDeploy๋ฅผ ์ด์šฉํ•ด ์‹คํ–‰์ค‘์ธ ec2 ์ธ์Šคํ„ด์Šค์—์„œ์˜ ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.

๐Ÿ“ What I should learn

  • ์‹คํ—˜๋‹จ๊ณ„์ธ React18์˜ ์„œ๋ฒ„์ปดํฌ๋„ŒํŠธ
  • canvas context์˜ bezierCurveTo(), quadraticCurveTo()์™€ ์ด๋ฅผ ์ ์šฉํ•  ๋ฐฉ๋ฒ•
  • ์›น์†Œ์บฃ์ด๋‚˜ HTML Canvas ํ˜น์€ ๊ธฐํƒ€ ๊ธฐ๋Šฅ ์„ฑ๋Šฅ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•
  • ...