Skip to content

UMC-Hackathon-D/Front

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

82 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ›ฅ๏ธ ๋‚ญ๋งŒ ๋ณดํŠธ - Front

โญ๏ธ ๊ธฐ์ˆ  ์Šคํƒ

โœ… Framework

  • React + Typescript

    • ํŽ˜์ด์ง€ ์ด๋™์ด ๋งŽ์ง€ ์•Š๊ณ  Single Page ๋‚ด๋ถ€์—์„œ์˜ ๋™์ž‘๋“ค์ด ๋งŽ์•„ React๋กœ ์„ ์ •ํ•˜์˜€๊ณ  , compile ๊ณผ์ •์—์„œ error check๊ฐ€ ๊ฐ€๋Šฅํ•œ TS๋ฅผ ์ด์šฉํ•ด DX , UX๋ฅผ ์ฆ์ง„์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

โœ… Data Fetching

  • axios + tanstack/react-query

    • ์ž๋™์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ JSON์œผ๋กœ Parsing ํ•ด์ฃผ๊ณ  ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด axios๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  , server data์™€ client data ์ƒํ˜ธ ๊ฐ„์˜ ์ตœ์‹  ์ƒํƒœ๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด tanstack query๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

โœ… CSS

  • styled-components

    • ํŒ€์›๋“ค์ด ์งง์€ ์‹œ๊ฐ„ ๋™์•ˆ tailwind๋ฅผ ํ•™์Šตํ•˜๊ธฐ์—” ๋ฌด๋ฆฌ๊ฐ€ ์žˆ๋‹ค๊ณ  ํŒ๋‹จํ•˜์—ฌ ์ต์ˆ™ํ•œ styled-component๋ฅผ ์ด์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.
  • styled-reset

    • ๊ธฐ์กด html ์„ธํŒ… ์ดˆ๊ธฐํ™”๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

โœ… validate

  • react-hook-form ๋ฐ zod

    • ์„œ๋น„์Šค ๋‚ด๋ถ€์— validation์„ ๊ฒ€์ฆํ•ด์•ผ ํ•˜๋Š” ๊ณผ์ •์ด ๋งŽ๊ธฐ์— useRef๋ฅผ ์ด์šฉํ•ด rendering ๋ฐœ์ƒ ํšŸ์ˆ˜๋ฅผ ์ค„์ด๋Š” react-hook-form ๋ฐ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ schema๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” zod๋ฅผ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

โญ๏ธ ๋ธŒ๋žœ์น˜(Branch) ์ปจ๋ฒค์…˜

  1. main : ์ตœ์ข… ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ branch. Pull Request๋ฅผ ์ด์šฉํ•ด develope branch๋ฅผ ์ตœ์ข… merge
  2. develop : ๋ฐฐํฌํ•˜๊ธฐ ์ „ ๊ฐœ๋ฐœ ์ค‘์ผ ๋•Œ ๊ฐ์ž์˜ ๋ธŒ๋žœ์น˜์—์„œ mergeํ•˜๋Š” ๋ธŒ๋žœ์น˜
  3. feat / #์ด์Šˆ ๋ฒˆํ˜ธ / ๊ธฐ๋Šฅ๋ช… : feature ๋ธŒ๋žœ์น˜. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ. ๊ฐœ๋ฐœ์ด ์™„๋ฃŒ๋˜๋ฉด develop ๋ธŒ๋žœ์น˜๋กœ ๋ณ‘ํ•ฉ
  4. fix / #์ด์Šˆ ๋ฒˆํ˜ธ / ๊ธฐ๋Šฅ๋ช… : fix ๋ธŒ๋žœ์น˜. ์ƒ์„ฑ ํ›„ ๋ฒ„๊ทธ๊ฐ€ ์ƒ๊ฒผ์„ ๋•Œ ์ˆ˜์ •ํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • git-flow ๋ฐฉ์‹
    * ๋‚ด๊ฐ€ ๋งŒ๋“ค๊ณ ๊ฐ€ ํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋‚˜ ๋ฌธ์ œ๋“ค์„ ๋จผ์ € issue๋กœ ์˜ฌ๋ฆฌ๊ณ  ์˜ฌ๋ฆฐ ์ด์Šˆ ๋„˜๋ฒ„๋ฅผ ํ™œ์šฉํ•ด์„œ feature/#1-signup ์ด๋Ÿฐ์‹์œผ๋กœ ์ƒˆ๋กœ์šด ๋ธŒ๋Ÿฐ์น˜๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ฑฐ๋‚˜ ๋ฆฌํŽ™ํ† ๋ง ํ•œ ๋‹ค์Œ์— ์ด ๋ธŒ๋Ÿฐ์น˜ ๋“ค์„ develop ๋ธŒ๋žœ์น˜์— merge ํ•˜๋Š” ๊ตฌ์กฐ

  • ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ

โ—โ—ํ•ญ์ƒ develop์— ์ฒดํฌ์•„์›ƒํ•ด์„œ ๋งŒ๋“ค๊ฒƒโ—โ—
( develop ๋ธŒ๋žœ์น˜์—์„œ ์ƒˆ๋กœ์šด ๋ธŒ๋žœ์น˜๋ฅผ ๋งŒ๋“ค์–ด์•ผ ๊ฐ€์žฅ ์ตœ์‹  ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋Š” ํ•˜์œ„ ๋ธŒ๋žœ์น˜๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. )

  $ git branch feat/#์ด์Šˆ๋ฒˆํ˜ธ/๊ธฐ๋Šฅ๋ช…
  • ๋ธŒ๋žœ์น˜ ์ฒดํฌ์•„์›ƒ ( ๋งŒ๋“  ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ )

    $ git checkout feat/#์ด์Šˆ๋ฒˆํ˜ธ/๊ธฐ๋Šฅ๋ช…
    

โญ๏ธ ์ฝ”๋”ฉ(Coding) ์ปจ๋ฒค์…˜

๋„ค์ด๋ฐ ์ปจ๋ฒค์…˜

  • ๋ณ€์ˆ˜ / ํ•จ์ˆ˜ / ๋ฉ”์„œ๋“œ : Camel Case(์นด๋ฉœ ์ผ€์ด์Šค)
  • ์ปดํฌ๋„ŒํŠธ : Pascal Case(ํŒŒ์Šค์นผ ์ผ€์ด์Šค)

๋“ค์—ฌ์“ฐ๊ธฐ ์ปจ๋ฒค์…˜

  • ๋“ค์—ฌ์“ฐ๊ธฐ : Tab

์ฃผ์„ ์ปจ๋ฒค์…˜

  • ํ•œ ์ค„ ์ฃผ์„ : //
  • ์—ฌ๋Ÿฌ ์ค„ ์ฃผ์„ : /**/

โญ๏ธ ์ด์Šˆ(Issue) ์ปจ๋ฒค์…˜

์ œ๋ชฉ :

[Feat] ์ด์Šˆ ์ œ๋ชฉ

  • ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ์‹œ : [feat] ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ์˜ค๋ฅ˜/ ๋ฒ„๊ทธ ๋ฐœ์ƒ ์‹œ : [fix] ๋กœ๊ทธ์ธ ์˜ค๋ฅ˜ ์ˆ˜์ •
  • ๋ฆฌํŒฉํ† ๋ง ์‹œ : [refactor] ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋ฆฌํŒฉํ† ๋ง

๋‚ด์šฉ

  • feat ์ผ๋•Œ:
    • ์ž‘์—…ํ•œ ๋‚ด์šฉ : ์ž‘์—…ํ•œ ๊ธฐ๋Šฅ ์ž‘์„ฑ ( ์˜ˆ์‹œ : ๋กœ๊ทธ์ธ )
  • fix ์ผ๋•Œ:
    • ๋ฐœ์ƒํ•œ ์˜ค๋ฅ˜ :
    • ๋ฐœ์ƒํ•œ ์›์ธ :
    • ํ•ด๊ฒฐ ๋ฐฉ์•ˆ :
    • ๊ฒฐ๊ณผ :
  • refactor ์ผ๋•Œ:
    • ๋‚ด์šฉ : ๋ฆฌํŒฉํ† ๋ง์ด ํ•„์š”ํ•œ ๋ถ€๋ถ„ ์ž…๋ ฅ
    • ๋ฆฌํŒฉํ† ๋ง ์ด์œ  : ๊ณผ๊ฑฐ ์™€ ํ˜„์žฌ๋ฅผ ๋น„๊ตํ•ด์„œ ์ž‘์„ฑํ•ด์ฃผ๊ธฐ
    • ๋ฆฌํŒฉํ† ๋ง ๊ฒฐ๊ณผ : ๋ณ€๊ฒฝํ•œ ๋‚ด์šฉ ์ž…๋ ฅ

โญ๏ธ PR(Pull Request) ์ปจ๋ฒค์…˜

PR ์ œ๋ชฉ

[Feat/#์ด์Šˆ ๋ฒˆํ˜ธ] " pr message " (์˜ˆ์‹œ : [Feat/#1] "๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€")

๐Ÿ“Œ ๊ด€๋ จ ์ด์Šˆ๋ฒˆํ˜ธ

(Closes ํ‚ค์›Œ๋“œ๊ฐ€ ์žˆ์–ด์•ผ PR์ด ๋จธ์ง€๋˜์—ˆ์„ ๋•Œ ์ด์Šˆ๊ฐ€ ์ž๋™์œผ๋กœ ๋‹ซํžŒ๋‹ค)

  • Closes #์ด์Šˆ ๋ฒˆํ˜ธ

๐Ÿ“Œ PR ์œ ํ˜•

์–ด๋–ค ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๋‚˜์š”?

  • ์ƒˆ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ๋ฒ„๊ทธ ์ˆ˜์ •
  • CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
  • ๋ฆฌํŒฉํ† ๋ง

๐Ÿ“Œ PR ์š”์•ฝ

ํ•ด๋‹น PR์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์š”์•ฝํ•ด ์ฃผ์„ธ์š”

๐Ÿ“Œ ์ž‘์—… ์„ธ๋ถ€ ๋‚ด์šฉ

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

๐Ÿ”— ์ฐธ๊ณ  ์ž๋ฃŒ

โ€‹


์ปค๋ฐ‹(Commit) ์ปจ๋ฒค์…˜

  [Feat]: ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ํƒ€์ž…
  (git commit -m โ€œ[Feat/#์ด์Šˆ ๋ฒˆํ˜ธ]: "commit messagesโ€")


  (์˜ˆ์‹œ: git commit -m "feat:"ํšŒ์› ๊ฐ€์ž… ๊ธฐ๋Šฅ ๊ตฌํ˜„"" )
  • ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ํƒ€์ž… ์ข…๋ฅ˜
  1. init : ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์ƒ์„ฑ ๋ฐ ์„ค์ •
  2. feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€, ๊ธฐ์กด์˜ ๊ธฐ๋Šฅ์„ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž์ถ”์–ด ์ˆ˜์ •
  3. fix : ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๋ฒ„๊ทธ ์ˆ˜์ •
  4. build : ๋นŒ๋“œ ๊ด€๋ จ ์ˆ˜์ •
  5. chore : ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์ˆ˜์ •, ๊ทธ ์™ธ ๊ธฐํƒ€ ์ˆ˜์ • ex) .gitignore
  6. docs : ๋ฌธ์„œ(์ฃผ์„) ์ˆ˜์ •
  7. style : ์ฝ”๋“œ ์Šคํƒ€์ผ, ํฌ๋งทํŒ…์— ๋Œ€ํ•œ ์ˆ˜์ •
  8. refactor : ๊ธฐ๋Šฅ์˜ ๋ณ€ํ™”๊ฐ€ ์•„๋‹Œ ์ฝ”๋“œ ๋ฆฌํŒฉํ„ฐ๋ง ex) ๋ณ€์ˆ˜ ์ด๋ฆ„ ๋ณ€๊ฒฝ

โญ๏ธ ํด๋”(Folder) ์ปจ๋ฒค์…˜

FSD (Feature-Sliced Design)

๊ธฐ์กด ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ํด๋” ๊ตฌ์กฐ๋Š” ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง€๊ธฐ์— , FE app์„ ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด ๊ตฌ์กฐํ™”ํ•˜๋Š” ์„ค๊ณ„ ํŒจํ„ด์ธ FSD๋ฅผ ์ฑ„ํƒํ•˜์˜€์Šต๋‹ˆ๋‹ค.

ํด๋”๋ณ„ ๋ชฉ์  ๋ฐ ๊ธฐ๋Šฅ

  • app: ์•ฑ์˜ ์ดˆ๊ธฐํ™” ๋ฐ ์ „์—ญ ์„ค์ •.
  • entities: ํ•ต์‹ฌ ๋„๋ฉ”์ธ ๋ฐ์ดํ„ฐ ๋ฐ ์ƒํƒœ.
  • features: ํŠน์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„(๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ํฌํ•จ).
  • shared: ๊ณตํ†ต ์œ ํ‹ธ๋ฆฌํ‹ฐ, ์Šคํƒ€์ผ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ.
  • pages: ํŠน์ • ํ™”๋ฉด์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋‹จ์œ„(์—ฌ๋Ÿฌ features๋ฅผ ์กฐํ•ฉ).
  • widgets : ๋…๋ฆฝ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ปดํฌ๋„ŒํŠธ

์ด ์ค‘ , ํ•ด๋‹น ์„œ๋น„์Šค์—๋Š” ๋น„์ฆˆ๋‹ˆ์Šค์  ๊ฐ€์น˜๋ฅผ ๊ฐ€์ง€๋Š” ๊ธฐ๋Šฅ ๋‹จ์œ„ (like ,review , product rating ๋“ฑ)์ด ํฌํ•จ๋˜์ง€ ์•Š๊ณ  , ํŠน์ • ๋„๋ฉ”์ธ ๋ฐ์ดํ„ฐ์˜ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค๊ณ  ํŒ๋‹จํ•˜์—ฌ entities ๋ฐ features ํด๋” ๊ตฌ์กฐ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

โญ๏ธ ํ™”๋ฉด ๋ถ„์„

https://www.figma.com/design/uk9cNi1saPpTxzehCxKY2g/Untitled?node-id=0-1&p=f&t=Gvoy5LOXBLsceFNZ-0

โญ๏ธ ํŒŒํŠธ ๋ถ„๋ฐฐ

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-12-17 แ„‹แ…ฉแ„’แ…ฎ 4 49 20

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages