๐Ÿ’Œ Thanks Clip


Thumbnail

๐Ÿ  ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ


์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ์งง์€ ๋™์˜์ƒ์„ ๋งŒ๋“ค์–ด ๊ณ ๋งˆ์šด ๋งˆ์Œ์„ ์ „ํ•ด๋ณผ๊นŒ์š”?

๋Œ์•„๋ณด๋ฉด ์ฃผ๋ณ€์— ์ฐธ ๊ณ ๋งˆ์šด ๋ถ„๋“ค์ด ๋งŽ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ๊ธฐํšŒ์— ์ฃผ์œ„์˜ ๊ฐ์‚ฌํ•œ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ํ•˜๋‚˜๋ฟ์ธ ํด๋ฆฝ ์˜์ƒ์œผ๋กœ ๋งˆ์Œ์„ ์ „๋‹ฌํ•ด๋ณด๋Š” ๊ฑด ์–ด๋–จ๊นŒ์š”?

์งง์€ ๊ฐ์‚ฌํŽธ์ง€๋ฅผ ์ž‘์„ฑํ•˜๊ณ , ๋ฐ›๋Š” ๋ถ„์—๊ฒŒ ์–ด์šธ๋ฆฌ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ๋ฝ‘์•„๋ณด์„ธ์š”.

์—ฌ๋Ÿฌ๋ถ„์˜ ๊ฐ์‚ฌํ•œ ๋งˆ์Œ์„ ์†Œ์ค‘ํžˆ ๋‹ด์•„ ์˜์ƒ์œผ๋กœ ๋ณด๋‚ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.

GDSC CAU Frontend-final-project

ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„ : 2022.12.30 ~ 2023.01.21

๐Ÿ”ฅ ํ™”๋ฉด ํ”Œ๋กœ์šฐ ๋ฐ ์„œ๋น„์Šค ํ•ต์‹ฌ ๊ธฐ๋Šฅ


0. ๋ฉ”์ธ ํ™”๋ฉด

1. ํŽธ์ง€ ์“ฐ๊ธฐ - from / to / letter

๋ฐ›๋Š” ์‚ฌ๋žŒ, ๋ณด๋‚ด๋Š” ์‚ฌ๋žŒ์˜ ์ด๋ฆ„์„ ์ž…๋ ฅํ•œ ํ›„ ํŽธ์ง€ ๋‚ด์šฉ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

2. ํŽธ์ง€ ํƒœ๊ทธ ์„ ํƒ

๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ์–ด์šธ๋ฆฌ๋Š” ํƒœ๊ทธ๋ฅผ 2~5๊ฐœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

3. ํŽธ์ง€์ง€ ๊พธ๋ฏธ๊ธฐ

  1. ํŽธ์ง€์ง€ ์„ ํƒ

  1. ํŽธ์ง€์ง€ ์ƒ‰ ์„ ํƒ

  1. ํฐํŠธ ์„ ํƒ 3๊ฐ€์ง€ ํฐํŠธ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ ํŽธ์ง€ ํ…์ŠคํŠธํฐํŠธ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์Šคํ‹ฐ์ปค ์ถ”๊ฐ€

  1. ์ตœ์ข… ํ™•์ธ

4. ์˜์ƒ์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ

  1. ์˜์ƒ server

    aws lambda ์—์„œ clip์„ ๋งŒ๋“ค๊ณ , s3 ๋กœ ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

  2. ์˜์ƒ client

    • ์„œ๋ฒ„์—์„œ ์˜์ƒ์„ ๋งŒ๋“œ๋Š” ๋™์•ˆ ๋กœ๋”ฉํ™”๋ฉด์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
    • ๋งŒ๋“ค์–ด์ง„ ํŽธ์ง€ clip์„ ๊ณต์œ ํ•˜๊ธฐ ์ „์— ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5. ์นด์นด์˜คํ†ก ๊ณต์œ 

  • ๋ณด๋‚ด๋Š” ์‚ฌ๋žŒ

    ๋งŒ๋“ค์–ด์ง„ ์˜์ƒ์„ ์นด์นด์˜คํ†ก ๊ณต์œ  ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ฐ›๋Š” ์‚ฌ๋žŒ

    ๋ณด๋‚ด๋Š” ์‚ฌ๋žŒ์œผ๋กœ๋ถ€ํ„ฐ ์นด์นด์˜คํ†ก ๊ณต์œ ๋งํฌ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค.

    ๋งํฌ ํด๋ฆญํ•˜๋ฉด ๋™์ ๋ผ์šฐํŒ…๋˜์–ด ๋‹ค์šด๋กœ๋“œํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

6. ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€

  1. ๋‹ค์šด๋กœ๋“œ

    ๋ Œ๋”๋ง์ด ์™„๋ฃŒ๋˜๋ฉด ๋‹ค์šด๋กœ๋“œ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์˜์ƒ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  2. ํŽธ์ง€ ๋งŒ๋“ค๊ธฐ

    ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋ฐ›๋Š” ์‚ฌ๋žŒ๋„ ํŽธ์ง€๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”จ ๊ธฐ์ˆ  ์Šคํƒ


์—ญํ•  ์ข…๋ฅ˜
Framework(SSR) Next.js
Core library remotion cookies-next @vercel/og partytown
Styling library tailwindcss heroicons
State Management library jotai
Backend(serverless) aws lambda + s3
Package Manager pnpm
Formatting Eslint, Prettier, husky, lint-staged

๐Ÿš€ ์šฐ๋ฆฌ์˜ ๊ทœ์น™


  • **git branch**

    • ํ˜‘์—…์‹œ ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด feautre branch ์ฃผ๋„ ๊ฐœ๋ฐœ
      • git flow ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ ๋ณ€๊ฒฝ?
    • feature ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ ์‹œ ๋ธŒ๋žœ์น˜ ์ด๋ฆ„์€ feature/๋‹ด๋‹น์ž์ด๋ฆ„/๊ธฐ๋Šฅ์ด๋ฆ„
    • feature ๋ธŒ๋žœ์น˜์—์„œ ์ง  ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด Pull Request๋ฅผ ์ƒ์„ฑ
    • Open๋œ PR์€ ํŒ€์›๋“ค์—๊ฒŒ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ›๊ณ , ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด main ๋ธŒ๋žœ์น˜๋กœ merge ์ง„ํ–‰
    • master ๋ธŒ๋žœ์น˜๋กœ push์‹œ vercel CI/CD ๋กœ ์ž๋™ ๋ฐฐํฌ
  • commit rule

    ์ œ๋ชฉ ์„ค๋ช…
    env ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์…‹์—…
    feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    fix ๋ฒ„๊ทธ ์ˆ˜์ •
    docs md ๋ฌธ์„œ ์ˆ˜์ •
    style ์ฝ”๋“œ ํฌ๋งทํŒ…, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ์ฝ”๋“œ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
    refactor ์ฝ”๋“œ ๋ฆฌํŽ™ํ† ๋ง
    chore ๋นŒ๋“œ ์—…๋ฌด ์ˆ˜์ •, ํŒจํ‚ค์ง€(package.json...) ์ˆ˜์ •
    test ํ…Œ์ŠคํŠธ ์ฝ”๋“œ, ๋ฆฌํŽ™ํ† ๋ง ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€
  • Folder Structure

    ๐Ÿ“ฆapp
     โ”ฃ ๐Ÿ“‚common
     โ”ฃ ๐Ÿ“‚download
     โ”ƒ โ”ฃ ๐Ÿ“‚components
     โ”ฃ ๐Ÿ“‚service
     โ”ฃ ๐Ÿ“‚step
     โ”ƒ โ”ฃ ๐Ÿ“‚1
     โ”ƒ โ”ฃ ๐Ÿ“‚2
     โ”ƒ โ”ฃ ๐Ÿ“‚3
     โ”ƒ โ”ฃ ๐Ÿ“‚4
     โ”ฃ ๐Ÿ“œhead.js
     โ”ฃ ๐Ÿ“œindex.css
     โ”ฃ ๐Ÿ“œlayout.js
     โ”ฃ ๐Ÿ“œlogo.module.css
     โ”— ๐Ÿ“œpage.js
    ๐Ÿ“ฆatoms
     โ”ฃ ๐Ÿ“œindex.js
     โ”ฃ ๐Ÿ“œletter.js
     โ”— ๐Ÿ“œsticker.js
    ๐Ÿ“ฆconstant
     โ”ฃ ๐Ÿ“œcookie.js
     โ”ฃ ๐Ÿ“œdeployConfig.js
     โ”ฃ ๐Ÿ“œletter.js
     โ”ฃ ๐Ÿ“œpath.js
     โ”— ๐Ÿ“œvideoConfig.js
    ๐Ÿ“ฆpages
     โ”— ๐Ÿ“‚api
     โ”ƒ โ”ฃ ๐Ÿ“œimage.jsx
     โ”ƒ โ”— ๐Ÿ“œrendering.js
    ๐Ÿ“ฆvideo
     โ”ฃ ๐Ÿ“‚components
     โ”ฃ ๐Ÿ“œCompositionClient.jsx
     โ”ฃ ๐Ÿ“œCompositionServer.jsx
     โ”ฃ ๐Ÿ“œRoot.jsx
     โ”ฃ ๐Ÿ“œindex.jsx
     โ”— ๐Ÿ“œwebpack-override.js
    

๐ŸŽฅ ๊ฒฐ๊ณผ ์˜์ƒ


๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ ์˜์ƒ์ด ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค!