Skip to content

Latest commit

ย 

History

History
468 lines (289 loc) ยท 21 KB

README.md

File metadata and controls

468 lines (289 loc) ยท 21 KB

๐Ÿš€ ์„œ๋กœ ๋‹ค๋ฅธ ์šฐ๋ฆฌ๊ฐ€ ๊ฒฐํ•ฉ๋˜๋Š” ๊ณณ โ€˜SHOOTโ€™

๐Ÿ”—ย Link : https://shoot-manage.com

https://github.com/user-attachments/assets/950c288d-1a52-46e5-97e3-9a9fe95ea3da

SHOOT์€ ํ”ผ๊ทธ๋งˆ ๋‚ด ์ž‘์—…๋ฌผ๊ณผ ๋Œ“๊ธ€์˜ ํšจ์œจ์  ๊ด€๋ฆฌ, ํŒ€ ๋ฉ”์‹ ์ € ์—ฐ๋™์„ ํ†ตํ•ด ํ˜‘์—…๊ณผ ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ์„ ๋•์Šต๋‹ˆ๋‹ค.

๐Ÿ”ซ ํŒ€ ์†Œ๊ฐœ

๊ธฐ๊ฐœ๋””

๊ธฐํš์ž, ๊ฐœ๋ฐœ์ž, ๋””์ž์ด๋„ˆ์˜ ์—ฐ๊ฒฐ์„ ๋•๋Š” ํ˜‘์—… ๊ด€๋ฆฌ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ค๊ณ ์ž ํ•˜๋Š” ํŒ€ ๊ธฐ๊ฐœ๋””์ž…๋‹ˆ๋‹ค!

๋ถ„์•ผ ์ด๋ฆ„ ํฌ์ง€์…˜
๊ธฐํš ์˜ค๋‚จํƒ PM, ์„œ๋น„์Šค ๊ธฐํš(์„œ๋น„์Šค ์ •์ฑ… ํ™•๋ฆฝ, ์œ ์ € ๋ฆฌ์„œ์น˜, ์™€์ด์–ดํ”„๋ ˆ์ž„ ์ž‘์„ฑ, UX writing)
๊ธฐํš ๋ฅ˜๊ฐ€์–ธ ์„œ๋น„์Šค ๊ธฐํš(์„œ๋น„์Šค ์ •์ฑ… ํ™•๋ฆฝ, ์œ ์ € ๋ฆฌ์„œ์น˜, ์™€์ด์–ดํ”„๋ ˆ์ž„ ์ž‘์„ฑ, UX writing)
๊ธฐํš ์žฅ์ˆ˜์ • ์„œ๋น„์Šค ๊ธฐํš(์„œ๋น„์Šค ์ •์ฑ… ํ™•๋ฆฝ, ์œ ์ € ๋ฆฌ์„œ์น˜, ์™€์ด์–ดํ”„๋ ˆ์ž„ ์ž‘์„ฑ, UX writing)
๋””์ž์ธ ์ง„์„ฑ์ด ๋””์ž์ธ ๋ฆฌ๋“œ, UX/UI ๋””์ž์ธ, GUI ๋””์ž์ธ, Lottie ์• ๋‹ˆ๋ฉ”์ด์…˜
๋””์ž์ธ ๋ฐ•์„ธ๋ฆฐ UX/UI ๋””์ž์ธ, GUI ๋””์ž์ธ, Lottie ์• ๋‹ˆ๋ฉ”์ด์…˜
ํ”„๋ก ํŠธ์—”๋“œ ๋ฅ˜์ฃผ์•„ ํ”„๋ก ํŠธ์—”๋“œ ๋ฆฌ๋“œ, ํ™”๋ฉด UI ๊ตฌํ˜„, ์„œ๋ฒ„ ์—ฐ๋™
ํ”„๋ก ํŠธ์—”๋“œ ์ด์˜ˆ๋‚˜ ํ™”๋ฉด UI ๊ตฌํ˜„, ์„œ๋ฒ„ ์—ฐ๋™
๋ฐฑ์—”๋“œ ๊น€์ˆ˜์ง„ ๋ฐฑ์—”๋“œ ๋ฆฌ๋“œ, DB ๋ฐ API ๊ตฌ์ถ•, ์„œ๋ฒ„ ๋ฐฐํฌ
๋ฐฑ์—”๋“œ ์œ ์ง€์„  DB ๋ฐ API ๊ตฌ์ถ•, ์„œ๋ฒ„ ๋ฐฐํฌ

โœ…ย USER RESEARCH (๋ฌธ์ œ ์ธ์‹)

โ—

Main PAIN POINT : ๊ธฐ์กด FIGMA ๋‚ด ์„œ๋น„์Šค ํ•œ๊ณ„๋กœ ์ธํ•œ ์ƒ์‚ฐ์„ฑ ์ €ํ•˜์™€ ํ˜‘์—…์˜ ๋ถˆํŽธํ•จ

ํ•ต์‹ฌ๊ฐ€์„ค : Figma๋ฅผ ํ™œ์šฉํ•œ ํ˜‘์—…์‹œ ์‚ฌ๋žŒ๋“ค์€ ์ฝ”๋ฉ˜ํŠธ ๊ธฐ๋Šฅ๊ณผ ๊ด€๋ จํ•˜์—ฌ ๊ฐ€์žฅ ๋ถˆํŽธํ•จ์„ ๋งŽ์ด ๋Š๋‚„ ๊ฒƒ์ด๋‹ค. ** ์„ค๋ฌธ ์กฐ์‚ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜์˜ํ•˜์—ฌ ๊ฐ€์„ค ์ผ๋ถ€ ์ฑ„ํƒ : ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ํ”„๋ ˆ์ž„ ๊ด€๋ฆฌ** โ†’ ์•Œ๋ฆผ ๊ธฐ๋Šฅ โ†’ ์ฝ”๋ฉ˜ํŠธ ๊ธฐ๋Šฅ ์ˆœ์œผ๋กœ ๋ถˆํŽธํ•จ์„ ๋Š๋‚Œ

https://github.com/user-attachments/assets/21ded17e-d0de-482c-885c-ede93724b73d

โœ…ย Problem (๋ฌธ์ œ ์ •์˜)

https://github.com/user-attachments/assets/18fc2d66-f5e0-46fa-af4e-1ae7d070b44f

Problem 1. ๋Š˜์–ด๋งŒ ๊ฐ€๋Š” ์ž‘์—…๋ฌผ๊ณผ ์ฝ”๋ฉ˜ํŠธ, ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์—†์„๊นŒ?

โ€œ์ž‘์—…์„ ํ•˜๋‹ค ๋ณด๋ฉด ํ”„๋ ˆ์ž„์ด ๋Š˜์–ด๋‚˜๋Š”๋ฐ, ๋ถ„๋ฅ˜๊ฐ€ ์•ˆ๋˜๋‹ˆ๊นŒ ๊ด€๋ฆฌ๊ฐ€ ์•ˆ๋ผ์š”.โ€ โ€์ฝ”๋ฉ˜ํŠธ๊นŒ์ง€ ์ƒ๊ธฐ๋ฉด ์ •๋ง ๋ญ๊ฐ€ ๋ญ”์ง€๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.โ€

https://github.com/user-attachments/assets/d4a832f8-9020-4737-99b7-314602074bad

Problem 2. ํƒœ๊ทธํ•˜๊ณ  ๋‚˜์„œ๋„ ๋˜ ๋ฆฌ๋งˆ์ธ๋“œ ํ•ด์•ผ ๋ผ?

โ€œ์ œ๊ฐ€ ํƒœ๊ทธํ•œ๊ฑฐ ๋ณด์…จ์–ด์š”?โ€ โ€œํ”ผ๊ทธ๋งˆ ์ด๋ฉ”์ผ ์•Œ๋žŒ์ด ์™”์–ด์š”?โ€

https://github.com/user-attachments/assets/2f40b138-009d-4139-8c20-27b92b260d72

ํƒ€๊ฒŸ์ธต

  1. ํ•ต์‹ฌ ๋Œ€์ „์ œ: ํ”ผ๊ทธ๋งˆ ์‚ฌ์šฉ์ž
  2. ์ค‘์ „์ œ
    1. ํŒ€
      1. ํ”ผ๊ทธ๋งˆ ๋‚ด์—์„œ ๋‹ค์–‘ํ•œ ํŒŒํŠธ์˜ ํŒ€์›๋“ค๊ณผ ํ˜‘์—…ํ•˜๊ณ ์ž ํ•˜๋Š” ์‚ฌ๋žŒ
      2. ํ”ผ๊ทธ๋งˆ ์ด๋ฉ”์ผ ์•Œ๋žŒ์ด ์™”์Œ์—๋„ ์ธ์ง€๋ฅผ ๋ชปํ•œ์ ์ด ์žˆ๋Š” ์‚ฌ๋žŒ
    2. ๊ฐœ์ธ
      1. ๋Š˜์–ด๊ฐ€๋Š” ํ”ผ๊ทธ๋งˆ ์ž‘์—…๋ฌผ์— ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ
        • ์ž‘์—…๋ฌผ ์ตœ์‹  ๊ด€๋ฆฌ๊ฐ€ ์•ˆ๋จ
        • ํ”„๋ ˆ์ž„์˜ ์–‘์ด ๋ฐฉ๋Œ€ํ•จ
      2. ๊ธฐ์กด ํ”ผ๊ทธ๋งˆ ์ฝ”๋ฉ˜ํŠธ ๊ธฐ๋Šฅ์— ๋ถˆํŽธํ•จ์„ ๊ฒช๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ
        • ์ฝ”๋ฉ˜ํŠธ์™€ ์ž‘์—…๋ฌผ์ด ๋’ค์„ž์ด๊ฒŒ ๋˜๋ฉด ์ž‘์—… ํ™”๋ฉด์ด ๋ฒˆ์žกํ•ด์ง
        • ์ฝ”๋ฉ˜ํŠธ์˜ ์–‘์ด ๋งŽ์•„์ ธ์„œ ๊ด€๋ฆฌ๊ฐ€ ์•ˆ๋จ

ํŽ˜๋ฅด์†Œ๋‚˜

https://github.com/user-attachments/assets/0f4d5467-7bf4-41d9-9b89-a9110ab48c6d

๊ฐœ์ธ ์ž‘์—…์ž

https://github.com/user-attachments/assets/2cb172b7-7138-4eec-a874-18f5d1626d04

ํŒ€ ์ž‘์—…์ž

์œ ์ €์ €๋‹ˆ๋งต

https://github.com/user-attachments/assets/198bbd80-a213-43a8-aa1b-224638a424dc

https://github.com/user-attachments/assets/26bf4878-9de7-4dda-8625-ede9f05c2852

โœ…ย Solution (ํ•ด๊ฒฐ์ฑ…)

๐Ÿ’ก

SHOOT YOUR CREATIVE OUTPUT !

Figma๋ฅผ ๋” ๋˜‘๋˜‘ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•, SHOOT FOR FIGMA

Solution 1. SHOOT์€ ํ”ผ๊ทธ๋งˆ ๋‚ด ์ž‘์—…๋ฌผ๊ณผ ์ฝ”๋ฉ˜ํŠธ๋ฅผ โ€˜ํด๋”์™€ ํŒŒ์ผโ€™์ฒ˜๋Ÿผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ํ”ผ๊ทธ๋งˆ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

๐Ÿ’ก

์ž‘์—…๋ฌผ ํด๋” ์ƒ์„ฑ, ARCHIVE

https://github.com/user-attachments/assets/aecc6595-b48d-4ec7-93d2-78e5b8660844

  • ARCHIVE ๋ž€, BLOCK๋“ค์ด ๋ชจ์ธ ์ผ์ข…์˜ ํด๋”๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ”ํƒ•ํ™”๋ฉด์—์„œ ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๋“ฏ์ด [Create ํด๋ฆญ > ์ด๋ฆ„ ์„ค์ • > Save ํด๋ฆญ] ์„ ํ†ตํ•ด ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
๐Ÿ’ก

์ด์Šˆ ์˜์—ญ ์„ค์ •๊ณผ ํŒ€์›๋“ค๊ณผ์˜ ์†Œํ†ต, BLOCK

https://github.com/user-attachments/assets/1edbab83-5243-430e-a840-4b3ce027401a

  • BLOCK ์ด๋ž€, ์œ ์ €์— ์˜ํ•ด ์ง€์ •๋˜๋Š” ์˜์—ญ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.
  • [Create ํด๋ฆญ > ์˜์—ญ ์ง€์ • > Save ํด๋ฆญ] ์„ ํ†ตํ•ด ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ํ•˜๋‚˜์˜ ARCHIVE ์•ˆ์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ BLOCK์ด ์žˆ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ•˜๋‚˜์˜ BLOCK ๋‹จ์œ„๋กœ SHOOT COMMENT ๋ฅผ ํ†ตํ•ด ํŒ€์›๊ณผ ์†Œํ†ต์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
๐Ÿ’ก

์ฝ”๋ฉ˜ํŠธ์— ๋Œ€ํ•œ ํ™•์‹คํ•œ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ์ œ๊ณต, SHOOT COMMENT

โ€œ์ˆ˜๋งŽ์€ ์ฝ”๋ฉ˜ํŠธ๋“ค ์ค‘์—์„œ ๋‚ด๊ฐ€ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ์ผ, ํ•˜๊ณ  ์žˆ๋Š” ์ผ, ํ•ด๊ฒฐํ–ˆ๋˜ ์ผ๋“ค์ด ๊ตฌ๋ถ„์ด ์•ˆ๋ผ์š”.โ€ โ€์ฝ”๋ฉ˜ํŠธ๊ฐ€ ๋งŽ์•„์ง€๋ฉด ํ™”๋ฉด์ด ๋ฒˆ์žกํ•ด์ ธ์š”.โ€

์ƒ๋‹จ๋ถ€ ํƒญ๊ณผ ํ•˜๋‹จ๋ถ€ ํƒญ์—์„œ SHOOT COMMENT ์ƒํƒœ ๋ณ€๊ฒฝ์„ ํ†ตํ•ด ์—…๋ฌด ์ƒํ™ฉ ๊ณต์œ 

์ƒ๋‹จ๋ถ€ ํƒญ๊ณผ ํ•˜๋‹จ๋ถ€ ํƒญ์—์„œ SHOOT COMMENT ์ƒํƒœ ๋ณ€๊ฒฝ์„ ํ†ตํ•ด ์—…๋ฌด ์ƒํ™ฉ ๊ณต์œ 

๋‚˜๋ฅผ ๋ฉ˜์…˜ํ•œ SHOOT COMMENT๋งŒ ๋ชจ์•„๋ณผ ์ˆ˜ ์žˆ๋Š” โ€˜Mentioned ํƒญ

๋‚˜๋ฅผ ๋ฉ˜์…˜ํ•œ SHOOT COMMENT๋งŒ ๋ชจ์•„๋ณผ ์ˆ˜ ์žˆ๋Š” โ€˜Mentioned ํƒญ

  • BLOCK ์•ˆ์— SHOOT COMMENT ๋ฅผ ํ†ตํ•ด ํŒ€๊ณผ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด๋•Œ ์œ ์ €๋“ค์€ ๊ฐ๊ฐ์˜ SHOOT COMMENT ์— ๋Œ€ํ•ด [YET - DOING - DONE] ์œผ๋กœ ์ƒํƒœ ํ‘œ์‹œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ,
    • ์„œ๋น„์Šค ์ƒ๋‹จ๋ถ€ SHOOT COMMENT ์—์„œ ๊ฐ ์ƒํƒœ๋ณ„๋กœ ๋ชจ์•„๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ,
    • ํ•ด๋‹น ์ƒํƒœ ํ‘œ์‹œ๊ฐ€ ํŒ€์›๋“ค์—๊ฒŒ ๊ณต์œ ๋˜์–ด, ํ•ด๋‹น ํ…Œ์Šคํฌ์˜ ์ง„ํ–‰ ์ƒํ™ฉ ๊ณต์œ ๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.
  • ์ƒ๋‹จ๋ถ€ ํƒญ์—์„œ๋Š” โ€˜@โ€™ ํƒญ์„ ์ œ๊ณตํ•˜์—ฌ, ์œ ์ €๋Š” ์ž์‹ ์ด ๋ฉ˜์…˜๋œ SHOOT COMMENT ๋งŒ ๋ชจ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Solution 2. SHOOT์€ ์–ด๋– ํ•œ ์•Œ๋ฆผ๋„ ๋†“์น˜์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก

ํŒ€์› ํƒœ๊ทธ ์‹œ, ์—ฐ๋™๋œ ํŒ€ ๋ฉ”์‹ ์ €(Discord, Slack)๋กœ ์•Œ๋ฆผ ์ „์†ก

์ด๋ฏธ์ง€ ์„ค๋ช…

์ด๋ฏธ์ง€ ์„ค๋ช…

  • ๋ถ„๋ช…ํ•œ ์•Œ๋žŒ์œผ๋กœ ํ˜ผ์„  ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฉ”์‹œ์ง€ ํด๋ฆญ ์‹œ ํ•ด๋‹น SHOOT COMMENT๋กœ ๋ฐ”๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

IA (์ •๋ณด๊ตฌ์กฐ๋„)

https://github.com/user-attachments/assets/7a1c3150-2628-416a-a378-67d5d90d81b7

โœ…ย ์ฐจ๋ณ„์„ฑ

๊ฒฝ์Ÿ์‚ฌ ๋ถ„์„

์‹œ์ค‘์˜ SaaS ํˆด ์ค‘, ์›น ํ™˜๊ฒฝ์—์„œ์˜ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•œ ์„œ๋น„์Šค๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Notion Boost Zeplin InVision Asana
์ฃผ์š” ํƒ€๊ฒŸ์ธต Notion ์‚ฌ์šฉ์ž - ๋””์ž์ด๋„ˆ- ๊ฐœ๋ฐœ์ž ํ”„๋กœํ† ํƒ€์ž… ๊ด€๋ จ ํ˜‘์—…์ด ํ•„์š”ํ•œ ํŒ€ ๋ชจ๋“  ์‚ฐ์—…์—์„œ์˜ ํ”„๋กœ์ ํŠธ ํŒ€
ํ”„๋กœ๊ทธ๋žจ์‚ฌ์šฉ ๋ฐฉ์‹ ํฌ๋กฌ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ - ์›น ์„œ๋น„์Šค- ๋ฐ์Šคํฌํƒ‘ ์•ฑ ์›น ์„œ๋น„์Šค - ์›น ์„œ๋น„์Šค- ๋ฐ์Šคํฌํƒ‘ ์•ฑ- ๋ชจ๋ฐ”์ผ ์•ฑ ์„œ๋น„์Šค
ํŠน์ง• Notion์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ํŽธ์˜ ๊ธฐ๋Šฅ ํƒ‘์žฌ ๋””์ž์ธ๊ณผ ๊ฐœ๋ฐœ์ž ๊ฐ„ ํ˜‘์—…์„ ์ง€์›ํ•˜๋Š” ํˆด ๋””์ž์ธ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•œ ๋””์ž์ธ ํ˜‘์—… ํ”Œ๋žซํผ ํŒ€ ํ˜‘์—…๊ณผ ์˜์‚ฌ์†Œํ†ต์— ์ตœ์ ํ™”๋œ ํˆด
MVP - ๋จธ๋ฆฌ๊ธ€ ๊ณ ์ •- ๋ฌดํ•œ ์Šคํฌ๋กค ์šฉ์ด- ๋‹ค์–‘ํ•œ ํ…Œ๋งˆ - ๋””์ž์ธ ์‚ฌ์–‘ ๊ตฌ์ฒด์ ์œผ๋กœ ์ „๋‹ฌ- UI ์š”์†Œ ์ž๋™ ์ถ”์ถœ ๋ฐ ๊ณต์œ  - ๋””์ž์ธ ํ”„๋กœํ† ํƒ€์ดํ•‘- ์‹ค์‹œ๊ฐ„ ํ˜‘์—… ๋ฐ ํ”ผ๋“œ๋ฐฑ ๊ด€๋ฆฌ - ํ˜‘์—… ์ผ์ • ๊ด€๋ฆฌ- ํ”„๋กœ์ ํŠธ ์ž‘์—…๋ฌผ ๊ด€๋ฆฌ
๊ฐ€๊ฒฉ ์ •์ฑ… ๋ฌด๋ฃŒ - ๋ฌด๋ฃŒ ํ”Œ๋žœ ์ œ๊ณต- ์œ ๋กœ ํ”Œ๋žœ: $8/์›” (1์ธ๋‹น) - ๋ฌด๋ฃŒ ํ”Œ๋žœ ์ œ๊ณต- ์œ ๋ฃŒ ํ”Œ๋žœ: $9.95/์›” (1์ธ๋‹น) - ๋ฌด๋ฃŒ ํ”Œ๋žœ ์ œ๊ณต- ์œ ๋ฃŒ ํ”Œ๋žœ: $10.99/์›” (1์ธ๋‹น)

ํฌ์ง€์…”๋‹๋งต

https://github.com/user-attachments/assets/055b36b8-9f45-4004-b363-3523291507d4

ํ•ต์‹ฌ ์ฐจ๋ณ„์  (vs. ํ”ผ๊ทธ๋งˆ ์ฝ”๋ฉ˜ํŠธ ๊ธฐ๋Šฅ)

https://github.com/user-attachments/assets/633f5578-a813-40a8-b653-3792f5070cfe

๐Ÿ”ซย ๋””์ž์ธ ๋ฌด๋“œ๋ณด๋“œ

โœ…ย ์„œ๋น„์Šค ์ปจ์…‰

https://github.com/user-attachments/assets/17170a98-f2d6-4547-8cf9-0f1b80aa2dee

โœ…ย ๋””์ž์ธ์‹œ์Šคํ…œ

https://github.com/user-attachments/assets/c0077727-6dda-4fb3-852a-79d1d2d7d5d3

https://github.com/user-attachments/assets/37a7eec5-421e-476f-8505-79926b3eeac8

โœ…ย GUI

์›น์‚ฌ์ดํŠธ

๋ฉ”์ธ ํ™ˆํŽ˜์ด์ง€ UI

https://github.com/user-attachments/assets/212f86b8-7cdb-4cf0-bf1f-f4ae7f9eba9b

MY PAGE UI (1)

https://github.com/user-attachments/assets/b9acb2fb-dcda-462c-b9f8-37c106e46edc

MY PAGE UI (2)

https://github.com/user-attachments/assets/3b028879-8bb8-4210-aa62-7b175de838f9

ํ”Œ๋Ÿฌ๊ทธ์ธ

ํ”ผ๊ทธ๋งˆ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋กœ๊ทธ์ธ UI SHOOT COMMEN__EMPTY UI
ํ”ผ๊ทธ๋งˆ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋กœ๊ทธ์ธ UI SHOOT COMMNET
SHOOT COMMENT YET UI SHOOT COMMENT DOING UI
ํ”ผ๊ทธ๋งˆ image
SHOOT COMMENT DONE UI SHOOT COMMENT MENTINED UI
image image
CRETE_ARCHIVE CREATE_ARCHIVE
image image
CREATE_BLOCK CREATE_BLOCK
image image
CREATE_SHOOT CREATE_SHOOT
image image

image

image

Stack

FE

PLUGIN

  • boilerplate๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ์˜ ์ดˆ๊ธฐ ์„ค์ •๊ณผ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ํ‘œ์ค€ํ™”ํ•ด ๊ฐœ๋ฐœ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๊ณ , ์ฝ”๋“œ์˜ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ, ์ค‘๋ณต ์ž‘์—…์„ ์ค„์—ฌ ์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๋Š” ๋™์‹œ์— ์œ ์ง€ ๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

  • UI์™€ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ฝ”๋“œ๋Š” ์„œ๋กœ ์ง์ ‘์ ์œผ๋กœ API์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๊ธฐ ์œ„ํ•ด postMessage์™€ onmessage๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. UI๋Š” ๋ธŒ๋ผ์šฐ์ € API๋ฅผ ํ†ตํ•ด postMessage์™€ onmessage๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ , ํ”Œ๋Ÿฌ๊ทธ์ธ ์ฝ”๋“œ๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ API์—์„œ ์ œ๊ณตํ•˜๋Š” postMessage์™€ onmessage๋ฅผ ํ†ตํ•ด ํ†ต์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋‘ ์˜์—ญ ๊ฐ„์˜ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.

  • ํ”Œ๋Ÿฌ๊ทธ์ธ์—์„œ๋Š” ์™ธ๋ถ€ ์ด๋ฏธ์ง€๋ฅผ ์ง์ ‘ ๋ฐ›์•„์˜ค๊ฑฐ๋‚˜ ๋กœ๋“œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์ด ์‹คํ–‰๋˜๋Š” Sandbox ํ™˜๊ฒฝ์˜ ์ œ์•ฝ ๋•Œ๋ฌธ์œผ๋กœ, ์™ธ๋ถ€ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ง์ ‘์ ์ธ ๋„คํŠธ์›Œํฌ ์š”์ฒญ์ด ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ”„๋ก์‹œ ์„œ๋ฒ„๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ๊ณผ ์™ธ๋ถ€ ๋ฆฌ์†Œ์Šค ๊ฐ„์˜ ์ค‘๊ณ„ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์™ธ๋ถ€ ์ด๋ฏธ์ง€ URL์— ๋Œ€ํ•œ ์š”์ฒญ์„ ๋ฐ›์•„ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋Œ€์‹  ๊ฐ€์ ธ์˜จ ๋’ค, ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์™ธ๋ถ€ ์„œ๋ฒ„์™€ ์ง์ ‘ ํ†ต์‹ ํ•˜์ง€ ์•Š๊ณ , ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์•ˆ์ „ํ•˜๊ฒŒ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

PLUGIN ๊ธฐ์ˆ  ์Šคํƒ ์„ ์ • ์ด์œ 

boilerplate

  • ํ”„๋กœ์ ํŠธ์˜ ์ดˆ๊ธฐ ์„ค์ •๊ณผ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ํ‘œ์ค€ํ™”ํ•˜์—ฌ ๊ฐœ๋ฐœ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๊ณ , ์ฝ”๋“œ์˜ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ, ์ค‘๋ณต ์ž‘์—…์„ ์ค„์—ฌ ์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๋Š” ๋™์‹œ์— ์œ ์ง€ ๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ ์‹œํ‚ต๋‹ˆ๋‹ค.

React

  • ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•˜์—ฌ UI๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ณ , ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Virtual DOM์„ ํ™œ์šฉํ•ด ํšจ์œจ์ ์ธ ๋ Œ๋”๋ง ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Typescript

  • javascript์— ํƒ€์ž… ์‹œ์Šคํ…œ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์ฝ”๋“œ์˜ ์˜ค๋ฅ˜๋ฅผ ์‚ฌ์ „์— ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ํƒ€์ž… ์•ˆ์ •์„ฑ ๋•๋ถ„์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ๋ช…ํ™•ํ•œ ํƒ€์ž… ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ ์ค‘ ์˜ค๋ฅ˜๋ฅผ ์ค„์ด๊ณ , ์ฝ”๋“œ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ ์‹œํ‚ต๋‹ˆ๋‹ค.

Recoil

  • React์™€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ†ตํ•ฉ๋˜๋Š” ๊ฐ„๋‹จํ•˜๊ณ  ์ง๊ด€์ ์ธ API๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜์œผ๋กœ ์œ ์—ฐํ•˜๊ฒŒ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋น„๋™๊ธฐ ์ƒํƒœ ๊ด€๋ฆฌ์™€ ํŒŒ์ƒ ์ƒํƒœ(Selector) ์ฒ˜๋ฆฌ์— ๊ฐ•์ ์ด ์žˆ์–ด ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ๊ฒฝ๋Ÿ‰ํ™”๋œ ๊ตฌ์กฐ๋กœ ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋„ ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์ด ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค.

WEB ๊ธฐ์ˆ  ์Šคํƒ ์„ ์ • ์ด์œ 

React

  • ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ œ๊ณตํ•˜์—ฌ UI๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ณ , ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ํ™•์žฅ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Virtual DOM์„ ํ™œ์šฉํ•ด ํšจ์œจ์ ์ธ ๋ Œ๋”๋ง ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Typescript

  • javascript์— ํƒ€์ž… ์‹œ์Šคํ…œ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์ฝ”๋“œ์˜ ์˜ค๋ฅ˜๋ฅผ ์‚ฌ์ „์— ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ํƒ€์ž… ์•ˆ์ •์„ฑ ๋•๋ถ„์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ๋ช…ํ™•ํ•œ ํƒ€์ž… ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ ์ค‘ ์˜ค๋ฅ˜๋ฅผ ์ค„์ด๊ณ , ์ฝ”๋“œ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ ์‹œํ‚ต๋‹ˆ๋‹ค.

TailwindCSS

  • ์œ ํ‹ธ๋ฆฌํ‹ฐ ํด๋ž˜์Šค ๊ธฐ๋ฐ˜์œผ๋กœ ๋น ๋ฅด๊ณ  ์ง๊ด€์ ์ธ ์Šคํƒ€์ผ๋ง์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ปค์Šคํ…€ ๋งˆ์ด์ง•์„ ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์–ด ๋‹ค์–‘ํ•œ ๋””์ž์ธ ์š”๊ตฌ์— ์œ ์—ฐํ•˜๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Vite

  • ๋น ๋ฅธ ๊ฐœ๋ฐœ ์„œ๋ฒ„์™€ ๋นŒ๋“œ ์†๋„๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์ƒ์‚ฐ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค. ๋ชจ๋“ˆํ™”๋ฅผ ์ง€์›ํ•˜๋ฉฐ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‹œ ์‹ค์‹œ๊ฐ„ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ด๋ฃจ์–ด์ ธ, ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ฆ‰๊ฐ์ ์ธ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Netlify

  • Netlify๋Š” Git๊ณผ ์—ฐ๋™๋˜์–ด ์ฝ”๋“œ ๋ณ€๊ฒฝ๋งŒ์œผ๋กœ ์ž๋™ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ HTTPS๋„ ๊ธฐ๋ณธ ์ œ๊ณตํ•ด ๋ณด์•ˆ๊ณผ ํŽธ์˜์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ CDN์„ ํ†ตํ•ด ๋น ๋ฅธ ์†๋„๋กœ ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๊ณ , ์„œ๋ฒ„๋ฆฌ์Šค ํ•จ์ˆ˜์™€ ๋„๋ฉ”์ธ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ํ™•์žฅ์„ฑ๊ณผ ๊ฐ„ํŽธํ•จ์„ ํ•จ๊ป˜ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ด์œ ๋กœ ๋ฐฐํฌ์™€ ๊ด€๋ฆฌ์˜ ๋ถ€๋‹ด์„ ํฌ๊ฒŒ ์ค„์ด๊ธฐ ์œ„ํ•ด ์„ ํƒํ•˜์˜€์Šต๋‹ˆ๋‹ค.

axios

  • HTTP ์š”์ฒญ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, ๋น„๋™๊ธฐ ํ†ต์‹ ์„ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. Promise ๊ธฐ๋ฐ˜์˜ API๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ์ž‘์—…์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ์š”์ฒญ ๋ฐ ์‘๋‹ต์— ๋Œ€ํ•œ ์„ธ๋ฐ€ํ•œ ์„ค์ •์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

BE

Stack

Spring Boot

  • ์„ค์ •์ด ๊ฐ„์†Œํ™”๋˜์–ด ์žˆ์–ด ๋น ๋ฅธ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ์ด ๊ฐ€๋Šฅํ–ˆ๊ณ , ๋‚ด์žฅ๋œ ํ†ฐ์บฃ ์„œ๋ฒ„๋กœ ๊ฐ„ํŽธํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‘ ๋ฐฑ์—”๋“œ ํŒ€์›์˜ ์ฃผ ์Šคํƒ์ด Spring Boot์ด๊ธฐ ๋•Œ๋ฌธ์— ์„ ํƒํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

MySQL

  • ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ, ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐ ๊ด€๋ฆฌ์— ์ ํ•ฉํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ์ฟผ๋ฆฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Redis

  • ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ๋น ๋ฅธ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฆฌํ”„๋ ˆ์‹œ ํ† ํฐ ๋“ฑ์„ ์ €์žฅํ•˜๊ณ , ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

JUnit

  • ์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐฐํฌ์—์„œ์˜ ์•ˆ์ •์„ฑ์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ์„ ์œ„ํ•˜์—ฌ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Docker

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ปจํ…Œ์ด๋„ˆํ™”ํ•˜์—ฌ ์ผ๊ด€๋œ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐฐํฌ ๋ฐ ํ™•์žฅ์ด ์šฉ์ดํ•˜๋ฉฐ, ๊ฐœ๋ฐœ, ํ…Œ์ŠคํŠธ, ๋ฐฐํฌ์˜ ํšจ์œจ์„ฑ์„ ๋†’์ด๊ธฐ์— ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

JPA

  • ์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ๋‹จ์ˆœํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • ORM ๊ธฐ๋Šฅ์„ ์ง€์›ํ•˜๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋…๋ฆฝ์„ฑ์„ ์ œ๊ณตํ•˜์—ฌ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Spring Security

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ธ์ฆ ๋ฐ ์ธ๊ฐ€๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ๋ณด์•ˆ ๊ธฐ๋Šฅ์„ ๊ฐ„๋‹จํ•œ ์„ค์ •์„ ํ†ตํ•ด ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Jacoco

  • ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€ ๋„๊ตฌ๋กœ, ํ…Œ์ŠคํŠธ๊ฐ€ ์ฝ”๋“œ์˜ ์–ด๋–ค ๋ถ€๋ถ„์„ ์‹คํ–‰ํ–ˆ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‹œ๊ฐํ™”๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธ ๋ฒ”์œ„๋ฅผ ์ธก์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ ์‹œ์˜ ๋”์šฑ ์•ˆ์ „ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Sentry

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์˜ค๋ฅ˜ ์ถ”์  ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ๋กœ, ์‹ค์‹œ๊ฐ„์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค.
  • ์—๋Ÿฌ๋ฅผ ๋น ๋ฅด๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด ๋ฌธ์ œ ๋ฐœ์ƒ ์‹œ ํ•ด๊ฒฐ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•  ์ˆ˜ ์žˆ์–ด ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Github Action

  • CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ์ž๋™ํ™”ํ•˜์—ฌ ์ฝ”๋“œ ๋ฐฐํฌ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ๋‹ค๋ฅธ CI/CD ๋„๊ตฌ์— ๋น„ํ•˜์—ฌ ๊ฐ„ํŽธํ•˜๊ฒŒ ์„ค์ • ๊ฐ€๋Šฅํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

Terraform

  • ๋‹ค์ค‘ ํด๋ผ์šฐ๋“œ ๋ฐฐํฌ ํ™˜๊ฒฝ์—์„œ ์„ ์–ธ์  ๊ตฌ๋ฌธ์„ ํ†ตํ•ด ์ธํ”„๋ผ์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์ถ”์ ํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐฐํฌํ™˜๊ฒฝ์— ๋Œ€ํ•˜์—ฌ ์ƒํƒœ๊ด€๋ฆฌ ๋ฐ ์ž๋™ํ™”๋ฅผ ํ†ตํ•ด ํšจ์œจ์ ์ด๊ณ  ์ผ๊ด€๋œ ์ธํ”„๋ผ ๊ด€๋ฆฌ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

ERD

image

Architecture

image

Convention

Commit Convention

feat : ๊ตฌํ˜„ํ•œ ๋‚ด์šฉ
feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„
add ํŒŒ์ผ ๋ฐ ์ฝ”๋“œ ์ถ”๊ฐ€
chore ๋ถ€์ˆ˜์ ์ธ ์ฝ”๋“œ ์ˆ˜์ • ๋ฐ ๊ธฐํƒ€ ๋ณ€๊ฒฝ์‚ฌํ•ญ
docs ๋ฌธ์„œ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •, ์‚ญ์ œ
fix ๋ฒ„๊ทธ ์ˆ˜์ •(์ฝ”๋“œ ๊ณ ์น˜๊ธฐ)
rename ํŒŒ์ผ ๋ฐ ํด๋” ์ด๋ฆ„ ๋ณ€๊ฒฝ
test ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •, ์‚ญ์ œ
refactor ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
ci/cd ci/cd, ๋ฐฐํฌ ๊ด€๋ จ

BRANCH

  • ์ปจ๋ฒค์…˜๋ช…/#์ด์Šˆ๋ฒˆํ˜ธ

  • pull request๋ฅผ ํ†ตํ•ด develop branch์— squash & merge ํ›„, branch delete

  • ๋ถ€๋“์ดํ•˜๊ฒŒ develop branch์— ์ง์ ‘ commit ํ•ด์•ผ ํ•  ๊ฒฝ์šฐ,

    !hotfix : ๊ตฌํ˜„ ๋‚ด์šฉ ์‚ฌ์šฉ

ISSUE TEMPLATE


[Feat] ๊ตฌํ˜„ํ•  ๋‚ด์šฉ
## โœจ ์ด์Šˆ ๋‚ด์šฉ
> 

## ๐Ÿ’ก ์ž‘์—… ๋‚ด์šฉ
- [ ]
- [ ]

## ๐Ÿ“Œ ์ฐธ๊ณ  ์‚ฌํ•ญ

PR TEMPLATE


[Feat] ๊ตฌํ˜„ํ•œ ๋‚ด์šฉ
## #๏ธโƒฃ ๊ด€๋ จ ์ด์Šˆ
- #

## ๐Ÿ’ก ์ž‘์—…๋‚ด์šฉ

## ๐Ÿ“ธ ์Šคํฌ๋ฆฐ์ƒท(์„ ํƒ)

## ๐Ÿ“ ๊ธฐํƒ€
(์ฐธ๊ณ ์‚ฌํ•ญ, ๋ฆฌ๋ทฐ์–ด์—๊ฒŒ ์ „ํ•˜๊ณ  ์‹ถ์€ ๋ง ๋“ฑ์„ ๋„ฃ์–ด์ฃผ์„ธ์š”)