Skip to content

๐Ÿชท 35๊ธฐ ์ ˆ๋กœ๊ฐ€ ์›นํŒŒํŠธ ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ ๐Ÿชท

Notifications You must be signed in to change notification settings

SOPT-all/35-APPJAM-WEB-JEOLLOGA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Jeolloga Logo

์ ˆ๋กœ๊ฐ€ (Jeolloga)

๋‚ด ๋งˆ์Œ์— ๋”ฑ ๋งž๋Š” ํ…œํ”Œ์Šคํ…Œ์ด๋ฅผ ์ฐพ์•„์ฃผ๋Š” ํž๋ง ์ถ”์ฒœ ์„œ๋น„์Šค

โ•ํ…œํ”Œ์Šคํ…Œ์ด ๊ฐ„ํŽธ ํƒ์ƒ‰ ์„œ๋น„์Šคโ•

ํ…œํ”Œ์Šคํ…Œ์ด๋ฅผ ๋งŒ๋‚˜๋Š” ๊ฐ€์žฅ ์‰ฌ์šด ๋ฐฉ๋ฒ•, ์ ˆ๋กœ๊ฐ€


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

๋‹น์‹ ์˜ ํ‰๋ฒ”ํ•œ ํ•˜๋ฃจ์— ํŠน๋ณ„ํ•œ ํž๋ง์„ ๋”ํ•ด๋ณด์„ธ์š”.

โ€˜์ ˆ๋กœ๊ฐ€โ€™๋Š” ํ…œํ”Œ์Šคํ…Œ์ด๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์ง€๋งŒ, ๋ณต์žกํ•œ ํƒ์ƒ‰์— ์–ด๋ ค์›€์„ ๋Š๋ผ๋Š” ๋ถ„๋“ค์„ ์œ„ํ•œ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

๊ฐœ์ธ์˜ ์ทจํ–ฅ๊ณผ ๋ชฉ์ ์— ๋งž๋Š” ํ…œํ”Œ์Šคํ…Œ์ด๋ฅผ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ‘ถ OUR TEAM

ํ”„๋กœํ•„์‚ฌ์ง„ ํ”„๋กœํ•„์‚ฌ์ง„ ํ”„๋กœํ•„์‚ฌ์ง„ ํ”„๋กœํ•„์‚ฌ์ง„
์„ฑํฌ
ํƒœ์šฑ
์˜๊ฒฝ
๊ฐ€ํ˜„
@seong-hui @Taew00k @bykbyk0401 @maylh

๐Ÿ›  ๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ์„ ์ • ์ด์œ  (Tech Stack)

์—ญํ•  ๊ธฐ์ˆ  ์„ ์ • ์ด์œ 
Library React ์ปดํฌ๋„ŒํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜๋กœ ์žฌ์‚ฌ์šฉ์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ๋›ฐ์–ด๋‚จ.
ํ’๋ถ€ํ•œ ์ƒํƒœ๊ณ„๋กœ ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ์‰ฝ๊ฒŒ ํ†ตํ•ฉ ๊ฐ€๋Šฅ.
๋™์  UI ๊ฐœ๋ฐœ์— ์ ํ•ฉํ•˜๊ณ , ๊ฐ€์ƒ DOM์„ ํ™œ์šฉํ•ด ๋น ๋ฅธ ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ œ๊ณต.
Programming Language TypeScript ์•ˆ์ •์ ์ธ ์ฝ”๋“œ ์ž‘์„ฑ๊ณผ ํ˜‘์—… ์‹œ ํƒ€์ž… ๋ณด์žฅ์ด ๊ฐ€๋Šฅ, ์œ ์ง€๋ณด์ˆ˜์„ฑ์ด ๋›ฐ์–ด๋‚จ
Styling Vanilla Extract CSS CSS-in-TypeScript ๋ฐฉ์‹์œผ๋กœ ํƒ€์ž… ์•ˆ์ „์„ฑ์„ ์ œ๊ณตํ•˜๋ฉฐ, ๋Ÿฐํƒ€์ž„ ์˜ค๋ฒ„ํ—ค๋“œ ์—†์ด ๋นŒ๋“œ ์‹œ ์ •์  CSS๋กœ ์ถ”์ถœ.
๋™์  ์Šคํƒ€์ผ๋ง๊ณผ ๋ชจ๋“ˆํ™”๋œ ์Šคํƒ€์ผ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•˜๊ณ , ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ํ˜‘์—… ํšจ์œจ์„ฑ์„ ๋†’์ž„.
Data Fetching Axios TanStack Query Axios: HTTP ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋ฉฐ ์ธํ„ฐ์…‰ํ„ฐ ์„ค์ •์œผ๋กœ ์š”์ฒญ/์‘๋‹ต ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ด
TanStack Query: ๋น„๋™๊ธฐ ๋ฐ์ดํ„ฐ ์ƒํƒœ ๊ด€๋ฆฌ์— ํŠนํ™”, ์บ์‹ฑ ยท ์ค‘๋ณต ์š”์ฒญ ์ œ๊ฑฐ ยท ์ž๋™ ๋ฆฌํŽ˜์น˜ ๊ธฐ๋Šฅ์œผ๋กœ ํšจ์œจ์ ์ธ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ
UI Development Storybook UI ์ปดํฌ๋„ŒํŠธ ๊ฐœ๋ฐœ ๋ฐ ํ…Œ์ŠคํŠธ ํŽธ์˜์„ฑ ์ œ๊ณต, ๋””์ž์ด๋„ˆ์™€์˜ ์›ํ™œํ•œ ์†Œํ†ต ๊ฐ€๋Šฅ
Formatting ESLint Prettier ์ฝ”๋“œ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๊ณ , ๊ฐ€๋…์„ฑ์„ ๋†’์ด๋ฉฐ, ์Šคํƒ€์ผ ์ปจ๋ฒค์…˜์„ ํ†ตํ•ฉ์ ์œผ๋กœ ๊ด€๋ฆฌ
Package Manager Yarn ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ ๋ฐ ์˜์กด์„ฑ ์„ค์น˜
Version Control Git GitHub ์ฝ”๋“œ ๋ฒ„์ „ ๊ด€๋ฆฌ์™€ ํ˜‘์—…์— ํ•„์ˆ˜์ ์ธ ๋„๊ตฌ
Deployment Vercel ์ดˆ๊ธฐ ๋ฐฐํฌ์— ์ ํ•ฉํ•œ ํ”Œ๋žซํผ์œผ๋กœ, ๊ฐ„ํŽธํ•œ ์„ค์ •๊ณผ ๋น ๋ฅธ ๋ฐฐํฌ ๊ฐ€๋Šฅ
์ถ”ํ›„ AWS๋กœ ํ™•์žฅ ๊ฐ€๋Šฅ

๐Ÿชท ์„œ๋น„์Šค ํ•ต์‹ฌ ๊ธฐ๋Šฅ

1๏ธโƒฃ ๋กœ๊ทธ์ธ/์˜จ๋ณด๋”ฉ

๋กœ๊ทธ์ธ/์˜จ๋ณด๋”ฉ ๋ทฐ image

โ€ข ์นด์นด์˜ค ์†Œ์…œ๋กœ๊ทธ์ธ ํ›„ ์˜จ๋ณด๋”ฉ ๊ณผ์ • ์ง„ํ–‰
โ€ข ์ด 4๊ฐ€์ง€ ๋‹จ๊ณ„
โ€ข ๋‚˜์ด, ์„ฑ๋ณ„ ๋‹จ๊ณ„๋Š” ํ•„์ˆ˜ ํด๋ฆญ
โ€ข ์ข…๊ต, ์ด์šฉ๊ฒฝํ—˜ ๋‹จ๊ณ„๋Š” ํŒจ์Šค ๊ฐ€๋Šฅ
โ€ข ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ํ˜„์žฌ ๋‹จ๊ณ„์˜ ์ •๋ณด ์ƒˆ๋กœ๊ณ ์นจ
โ€ข ์ด์ „, ์ดํ›„ ๋‹จ๊ณ„์˜ ์„ ํƒ๊ฐ’ ๊ธฐ์–ต

2๏ธโƒฃ ํ™ˆํŽ˜์ด์ง€

ํ™ˆํŽ˜์ด์ง€ ๋ทฐ
home home

โ€ข ๊ฒ€์ƒ‰ ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ๋งˆ์ด ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ๋งˆ์ดํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ์œ„์‹œ ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ์œ„์‹œ๋ฆฌ์ŠคํŠธ ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ๋‘˜๋Ÿฌ๋ณด๊ธฐ : ์ „์ฒด๊ฒ€์ƒ‰ ํ•„ํ„ฐ ๊ฒ€์ƒ‰ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ์ง€์—ญ ์„ ํƒ ์‹œ ์ง€์—ญ ํ•„ํ„ฐ๋ง ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ํ…œํ”Œ์Šคํ…Œ์ด ์†Œ๊ฐœ ํ๋ ˆ์ด์…˜
โ€ข ์ธ๊ธฐ ํ…œํ”Œ์Šคํ…Œ์ด ์บ๋Ÿฌ์…€
โ€ข ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ํšŒ์›์ด ์บ๋Ÿฌ์…€ ๋‚ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ๋กœ๊ทธ์ธ ์•ˆ๋‚ด ๋ชจ๋‹ฌ์ฐฝ ์ƒ์„ฑ
โ€ข ๋กœ๊ทธ์ธ ํšŒ์›์ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ์œ„์‹œ์— ์ถ”๊ฐ€

3๏ธโƒฃ ๊ฒ€์ƒ‰

๊ฒ€์ƒ‰ ๋ทฐ
search search

โ€ข ๊ฒ€์ƒ‰ ์ฐฝ์— ๊ฒ€์ƒ‰์–ด ์ž…๋ ฅ ์‹œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ฆฌ์ŠคํŠธ
ย ย ย ย โ—ฆ ํ•ด๋‹น๋˜๋Š” ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์—†์œผ๋ฉด empty๋ทฐ
โ€ข ํ•„ํ„ฐ๋ง ์Šฌ๋ผ์ด๋“œ ํด๋ฆญ ์‹œ ํ•„ํ„ฐ๋ง ํŽ˜์ด์ง€๋กœ ์—ฐ๊ฒฐ
โ€ข ๊ฒ€์ƒ‰ ์•„์ด์ฝ˜ ๋ˆ„๋ฅด๋ฉด ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€๋กœ ์ด๋™
ย ย ย ย โ—ฆ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๋‚˜์—ด(10๊ฐœ)
ย ย ย ย โ—ฆ ์ „์ฒด ์‚ญ์ œ ๊ฐ€๋Šฅ
ย ย ย ย โ—ฆ ์ด์ „๊ณผ ๋™์ผํ•œ ๊ฒ€์ƒ‰์–ด ์ž…๋ ฅ ์‹œ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด๋กœ ๋™๊ธฐํ™”
ย ย ย ย โ—ฆ ์ตœ๊ทผ ๊ฒ€์ƒ‰์–ด ๋ฒ„ํŠผ ๋ˆ„๋ฅด๋ฉด ํ•ด๋‹น ๊ฒ€์ƒ‰์–ด ๊ฒ€์ƒˆ ๊ฒฐ๊ณผ ๋ฆฌ์ŠคํŠธ๋กœ ์—ฐ๊ฒฐ
โ€ข ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ํšŒ์›์ด ๊ฒฐ๊ณผ ๋ฆฌ์ŠคํŠธ ๋‚ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ๋กœ๊ทธ์ธ ์•ˆ๋‚ด ๋ชจ๋‹ฌ์ฐฝ ์ƒ์„ฑ
โ€ข ๋กœ๊ทธ์ธ ํšŒ์›์ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ์œ„์‹œ์— ์ถ”๊ฐ€

4๏ธโƒฃ ํ•„ํ„ฐ๋ง

ํ•„ํ„ฐ๋ง ๋ทฐ
filter filter

โ€ข ์ƒ๋‹จ์˜ ํ•„ํ„ฐํƒ€์ž… ํด๋ฆญ ์‹œ ํ•ด๋‹น ํƒ€์ž…์œผ๋กœ ํ™”๋ฉด ์ด๋™
โ€ข ๊ฐ€๊ฒฉ ๋ฒ”์œ„ ์„ ์ • ๋ฐ” ๊ตฌํ˜„
โ€ข ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ํ•ด๋‹น ํ•„ํ„ฐ ์ ์šฉ๋œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ํŽ˜์ด์ง€๋กœ ์ด๋™

5๏ธโƒฃ ์ƒ์„ธ ํŽ˜์ด์ง€

์ƒ์„ธํŽ˜์ด์ง€ ๋ทฐ
image image

โ€ข ํ…œํ”Œ์Šคํ…Œ์ด ์นด๋“œ ํด๋ฆญ ์‹œ ์ƒ์„ธ ์ •๋ณด ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ๋ชฉ๋ก ํƒญ๋ฐ” ์‚ฌ๋ผ์ง€๋ฉด ์ƒ๋‹จ์— ๊ณ ์ •๋˜๋„๋ก ๊ตฌํ˜„
โ€ข ๋ชฉ๋ก ๋ˆ„๋ฅด๋ฉด ํ•ด๋‹น ์นดํ…Œ๊ณ ๋ฆฌ๋กœ ์ด๋™
โ€ข ๋ชฉ๋ก ๊ฒฐ๊ณผ๊ฐ’ ์—†์„ ๊ฒฝ์šฐ ์ •๋ณด ์—†์Œ ๋„์šฐ๊ธฐ
โ€ข ์ธ๋„ค์ผ ์ด๋ฏธ์ง€ ์—†์„ ๊ฒฝ์šฐ empty ์ด๋ฏธ์ง€
โ€ข ๋ฆฌ๋ทฐ ์Šคํฌ๋กค
โ€ข ํ…œํ”Œ์Šคํ…Œ์ด ์ •๋ณด ๋”๋ณด๊ธฐ, ์ ‘์–ด๋‘๊ธฐ ๊ตฌํ˜„
โ€ข ๋„ค์ด๋ฒ„ ์ง€๋„ ์—ฐ๊ฒฐ
โ€ข ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ํšŒ์›์ด ํ•ด๋‹น ํ…œํ”Œ์Šคํ…Œ์ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ๋กœ๊ทธ์ธ ์•ˆ๋‚ด ๋ชจ๋‹ฌ์ฐฝ ์ƒ์„ฑ
โ€ข ๋กœ๊ทธ์ธ ํšŒ์›์ด ์ฐœํ•˜๊ธฐ ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ์œ„์‹œ์— ์ถ”๊ฐ€

6๏ธโƒฃ ์œ„์‹œ๋ฆฌ์ŠคํŠธ

์œ„์‹œ๋ฆฌ์ŠคํŠธ ๋ทฐ image
โ€ข ํ™ˆํŽ˜์ด์ง€ ํ—ค๋” ์œ„์‹œ ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ์œ„์‹œ๋ฆฌ์ŠคํŠธ๋กœ ์ด๋™
โ€ข ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ํšŒ์›์ด ์œ„์‹œ ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ๋กœ๊ทธ์ธ ์•ˆ๋‚ด ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ์œ„์‹œ๋ฆฌ์ŠคํŠธ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ empty ๋ทฐ ๋„์šฐ๊ธฐ
โ€ข ์œ„์‹œ ์ทจ์†Œ ์‹œ ๋ฐ”๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋‚˜ ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ๋ฐ˜์˜
ย ย ย ย โ—ฆ ์œ„์‹œ๋ฆฌ์ŠคํŠธ ํŽ˜์ด์ง€ ๋‚ด์—์„œ ์œ„์‹œ ์ทจ์†Œ, ์žฌ์„ ํƒ ๊ฐ€๋Šฅ

7๏ธโƒฃ ๋งˆ์ดํŽ˜์ด์ง€

๋งˆ์ดํŽ˜์ด์ง€ ๋ทฐ image
โ€ข ํ™ˆํŽ˜์ด์ง€ ํ—ค๋” ๋งˆ์ด ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ๋งˆ์ดํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š์€ ํšŒ์›์ด ๋งˆ์ด ์•„์ด์ฝ˜ ํด๋ฆญ ์‹œ ๋กœ๊ทธ์ธ ์•ˆ๋‚ด ํŽ˜์ด์ง€๋กœ ์ด๋™
โ€ข ๋กœ๊ทธ์•„์›ƒ ํด๋ฆญ ์‹œ ๋ชจ๋‹ฌ์ฐฝ ์ƒ์„ฑ
โ€ข ํƒˆํ‡ด ํด๋ฆญ ์‹œ ๋ชจ๋‹ฌ์ฐฝ ์ƒ์„ฑ
1๏ธโƒฃ Commit ์ปจ๋ฒค์…˜

commit ๊ทœ์น™

ํ‚ค์›Œ๋“œ: ๋‚ด์šฉ

  • ์˜ˆ์‹œ:
    • init: ์ดˆ๊ธฐ ์„ธํŒ…
    • feat: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ

Commit ๋ฉ”์‹œ์ง€ ์ข…๋ฅ˜ ์„ค๋ช…

์ œ๋ชฉ ๋‚ด์šฉ
feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ๊ฒฝ์šฐ
style ์ฝ”๋“œ formatting, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ์ฝ”๋“œ ์ž์ฒด์˜ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
fix ๋ฒ„๊ทธ๋ฅผ ๊ณ ์นœ ๊ฒฝ์šฐ
refactor ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
docs ๋ฌธ์„œ๋ฅผ ์ˆ˜์ •ํ•œ ๊ฒฝ์šฐ
chore ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์ˆ˜์ •, ๊ทธ ์™ธ ๊ธฐํƒ€ ์ˆ˜์ • ex) .gitignore
design CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
comment ํ•„์š”ํ•œ ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ๋ณ€๊ฒฝ
rename ํŒŒ์ผ ๋˜๋Š” ํด๋” ๋ช…์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…๋งŒ์ธ ๊ฒฝ์šฐ
remove ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•œ ๊ฒฝ์šฐ
!BREAKING CHANGE ์ปค๋‹ค๋ž€ API ๋ณ€๊ฒฝ์˜ ๊ฒฝ์šฐ
!HOTFIX ๊ธ‰ํ•˜๊ฒŒ ์น˜๋ช…์ ์ธ ๋ฒ„๊ทธ๋ฅผ ๊ณ ์ณ์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ์ž‘์„ฑ ๊ฐ€์ด๋“œ๋ผ์ธ

  • ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ๋นˆ ํ–‰์œผ๋กœ ๋ถ„๋ฆฌ

    • ์ปค๋ฐ‹ ์œ ํ˜• ์ดํ›„ ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ํ•œ๊ธ€๋กœ ์ž‘์„ฑํ•˜์—ฌ ๋‚ด์šฉ์ด ๋ช…ํ™•ํžˆ ์ „๋‹ฌ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.
    • ๋ณธ๋ฌธ์—๋Š” ๋ณ€๊ฒฝํ•œ ๋‚ด์šฉ๊ณผ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜๋ฉฐ, "์–ด๋–ป๊ฒŒ"๋ณด๋‹ค๋Š” "๋ฌด์—‡"๊ณผ "์™œ"๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ์ž‘์„ฑํ•œ๋‹ค.
  • ์ œ๋ชฉ ํ˜•์‹

    • ์ œ๋ชฉ์˜ ์ฒซ ๊ธ€์ž๋Š” ์†Œ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
    • ์ œ๋ชฉ ๋์— ๋งˆ์นจํ‘œ(.)๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
    • ์ œ๋ชฉ์€ ์˜๋ฌธ ๊ธฐ์ค€ 50์ž ์ด๋‚ด๋กœ ์ž‘์„ฑํ•œ๋‹ค.
  • ๋ณธ๋ฌธ ์ž‘์„ฑ

    • ๋ณ€๊ฒฝํ•œ ๋‚ด์šฉ๊ณผ ์ด์œ ๋ฅผ ๊ตฌ์ฒด์ ์œผ๋กœ ์ž‘์„ฑํ•œ๋‹ค.
    • "์ž์‹ ์˜ ์ฝ”๋“œ๊ฐ€ ์ง๊ด€์ ์œผ๋กœ ๋ฐ”๋กœ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ๋ง์ž"๋Š” ์›์น™์„ ๋ฐ”ํƒ•์œผ๋กœ ์„ค๋ช…์„ ๋ช…ํ™•ํžˆ ํ•œ๋‹ค.
    • ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ํ•ญ๋ชฉ์ด ์žˆ๋‹ค๋ฉด ๊ธ€๋จธ๋ฆฌ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€๋…์„ฑ์„ ๋†’์ธ๋‹ค.
2๏ธโƒฃ Git, Branch ์ „๋žต

Git, Branch ์ „๋žต

feat/#์ด์Šˆ๋ฒˆํ˜ธ/์ด์Šˆ์ด๋ฆ„

Git Branch

  • GitHub-Flow ์ „๋žต + develop
  • ๋ธŒ๋žœ์น˜ ์šด์˜
    • feat/#์ด์Šˆ๋ฒˆํ˜ธ/์ด์Šˆ์ด๋ฆ„ (์ผ€๋ฐฅ ์ผ€์ด์Šค): ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋ฉด์„œ ๊ฐ์ž๊ฐ€ ์‚ฌ์šฉํ•œ ๋ธŒ๋žœ์น˜
      • main: ์™„์ „ํžˆ ์•ˆ์ „ํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋˜์—ˆ์„ ๋•Œ, ์ฆ‰ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ตœ์ข… mergeํ•˜๋Š” ๋ธŒ๋žœ์น˜
      • develop: ๋ฐฐํฌํ•˜๊ธฐ ์ „ ๊ฐœ๋ฐœ ์ค‘์ผ ๋•Œ ๊ฐ์ž์˜ ๋ธŒ๋žœ์น˜์—์„œ mergeํ•˜๋Š” ๋ธŒ๋žœ์น˜ (default ๋ธŒ๋žœ์น˜)
        • feat/#์ด์Šˆ๋ฒˆํ˜ธ/๊ธฐ๋Šฅ๋ช…: feature ๋ธŒ๋žœ์น˜. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ. ๊ฐœ๋ฐœ์ด ์™„๋ฃŒ๋˜๋ฉด develop ๋ธŒ๋žœ์น˜๋กœ ๋ณ‘ํ•ฉ
        • fix/#์ด์Šˆ๋ฒˆํ˜ธ/๊ธฐ๋Šฅ๋ช…: feature ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ ํ›„ ๋ฒ„๊ทธ๊ฐ€ ์ƒ๊ฒผ์„ ๋•Œ ์ˆ˜์ •ํ•˜๋Š” ๋ธŒ๋žœ์น˜
        • PR ๋จธ์ง€ ํ›„ ํ†ก๋ฐฉ ๋ฉ”์„ธ์ง€ ๋ณด๋‚ด๊ธฐ
        • approve ์ตœ์†Œ 2๋ช… ์ด์ƒ ๋ฐ›์•„์•ผ ๋จธ์ง€ ๊ฐ€๋Šฅ
        • pull ๋ฐ›์•„์˜ฌ ๋•Œ๋Š” merge ๋ณด๋‹ค๋Š” rebase ์‚ฌ์šฉ ๊ถŒ์žฅ
3๏ธโƒฃ ์ฝ”๋“œ ์ปจ๋ฒค์…˜
  1. ์ปดํฌ๋„ŒํŠธ ๋ฐ ํ•จ์ˆ˜ ๋„ค์ด๋ฐ

    • ๋ชจ๋‘ ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋กœ ์„ ์–ธ(rafce)
  2. ๋„ค์ด๋ฐ

    • ๋ณ€์ˆ˜ ํ•จ์ˆ˜๋Š” ์†Œ๋ฌธ์ž ์นด๋ฉœ ์ผ€์ด์Šค๋กœ ์„ ์–ธ
    • ๋ฐฐ์—ด์€ ๋ณต์ˆ˜ํ˜•์œผ๋กœ ์„ ์–ธ
    • ์ƒ์ˆ˜๋Š” ์Šค๋„ค์ดํฌ ์ผ€์ด์Šค๋ฅผ ํ™œ์šฉํ•ด ๋Œ€๋ฌธ์ž์™€ _ ๋ฅผ ์‚ฌ์šฉํ•ด ์„ ์–ธ
    • ์ปดํฌ๋„ŒํŠธ๋Š” ํ•ญ์ƒ ํŒŒ์Šค์นผ ์ผ€์ด์Šค๋กœ ์„ ์–ธ
    • interface ์„ ์–ธ: ์ปดํฌ๋„ŒํŠธ๋ช… + props
  3. Function

    • ํ•จ์ˆ˜์˜ ์‹๋ณ„์ž๋ช…์€ ํ•ญ์ƒ ์‹œ๋ฉ˜ํ‹ฑํ•˜๊ฒŒ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค. (์–ด๋–ค ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜์ธ์ง€ ํ•จ์ˆ˜๋ช…์„ ๋ณด๊ณ  ์•Œ ์ˆ˜ ์žˆ๋„๋ก ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค.)
    • ์ด๋ฒคํŠธ๋ฅผ ํ•ธ๋“ค๋ง ํ•˜๋Š” ํ•จ์ˆ˜๋Š” handle ์ ‘๋‘์‚ฌ๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ๋ฐ˜ํ™˜๊ฐ’์ด boolean ์ธ ํ•จ์ˆ˜๋Š” is ์ ‘๋‘์‚ฌ๋ฅผ ํ™œ์šฉํ•˜๋ฉฐ, ์–ด๋–ค ๊ฐ’์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜๋Š” get ์ ‘๋‘์‚ฌ๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.
    • ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜ ํ‘œํ˜„์‹๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค
  4. React & TypeScript

    • ์ปดํฌ๋„ŒํŠธ๋Š” ํ•ญ์ƒ ํŒŒ์Šค์นผ ์ผ€์ด์Šค๋กœ ์„ ์–ธํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: SmallBanner)

    • Inline Style ์„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    • ์Šคํƒ€์ผ ๋ณ€์ˆ˜๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ํ•˜๋‹จ์— ์ž‘์„ฑ

    • any ์‚ฌ์šฉ๊ธˆ์ง€


4๏ธโƒฃ Styling ์ปจ๋ฒค์…˜
  • rem ์‚ฌ์šฉ์„ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค.
  • border-radius: px๋กœ ์„ค์ •
  • ๊ธฐ๋ณธ ๊ธ€์ž ํฌ๊ธฐ 10pt ์„ค์ •
  • asset ํ˜•์‹
    • ํ•„์š”ํ•œ ์•„์ด์ฝ˜ ํŒŒ์ผ์€ Figma์—์„œ svg๋กœ export ํ•œ ํ›„ assets/icons (ex. ic_arrow.svg)
    • ํ•„์š”ํ•œ ์ด๋ฏธ์ง€ ํŒŒ์ผ์€ Figma ์—์„œ png๋กœ export ํ•œ ํ›„ assets/imagesํด๋”์— ๋„ฃ๊ธฐ (ex. img_picture.png)


๐Ÿ“ ํด๋” ๊ตฌ์กฐ

|-- ๐Ÿ“ .github
|-- ๐Ÿ“ node_modules
|-- ๐Ÿ“ public
|-- ๐Ÿ“ src
  |-- ๐Ÿ“ apis
  |-- ๐Ÿ“ assets
      |-- ๐Ÿ“ icons (svgํŒŒ์ผ)
      |-- ๐Ÿ“ images (pngํŒŒ์ผ)
  |-- ๐Ÿ“ components
      |-- ๐Ÿ“ common
         |-- ๐Ÿ“ Button
             |-- Button.tsx
             |-- Button.css.ts
  |-- ๐Ÿ“ constants
  |-- ๐Ÿ“ layout
  |-- ๐Ÿ“ pages
  |-- ๐Ÿ“ route
  |-- ๐Ÿ“ styles
  |-- ๐Ÿ“ types
  |-- App.tsx
  |-- main.tsx

About

๐Ÿชท 35๊ธฐ ์ ˆ๋กœ๊ฐ€ ์›นํŒŒํŠธ ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ ๐Ÿชท

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •