Skip to content

suhwan2004/Airlingo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

873 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

AirLingo

๐Ÿ“–๋ชฉ์ฐจ


๐Ÿ—“ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๊ธฐ๊ฐ„

2023.07.04 ~ 2023.08.18 (์•ฝ 7์ฃผ)


๐Ÿ“‘ ์ฃผ์ œ

ํ™”์ƒ ์ฑ„ํŒ…์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์›์–ด๋ฏผ๊ณผ์˜ ์–ธ์–ด ๊ตํ™˜ ์›น ์„œ๋น„์Šค ํ”„๋กœ์ ํŠธ


๐ŸŽ‰ ํ”„๋กœ์ ํŠธ ๊ธฐํš

ํ”„๋กœ์ ํŠธ๊ธฐํš ํ”„๋กœ์ ํŠธ๊ธฐํš

๐Ÿ”‘ ์ฃผ์š” ๊ธฐ๋Šฅ

์ฃผ์š”๊ธฐ๋Šฅ ์ฃผ์š”๊ธฐ๋Šฅ

๐Ÿ–ฅ ์„œ๋น„์Šค ํ™”๋ฉด

ํ™ˆ ํŽ˜์ด์ง€
ํ™ˆํŽ˜์ด์ง€ ํ™ˆํŽ˜์ด์ง€ ํ™ˆํŽ˜์ด์ง€ ํ™ˆํŽ˜์ด์ง€ ํ™ˆํŽ˜์ด์ง€
ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€
ํšŒ์›๊ฐ€์ž… ํšŒ์›๊ฐ€์ž… ํšŒ์›๊ฐ€์ž… ํšŒ์›๊ฐ€์ž… ํšŒ์›๊ฐ€์ž…
๋กœ๊ทธ์ธ ํŽ˜์ด์ง€
๋กœ๊ทธ์ธํŽ˜์ด์ง€
๋งค์นญํŽ˜์ด์ง€
๋งค์นญํŽ˜์ด์ง€ ๋งค์นญํŽ˜์ด์ง€ ๋งค์นญํŽ˜์ด์ง€ ๋งค์นญํŽ˜์ด์ง€ ๋งค์นญํŽ˜์ด์ง€ ๋งค์นญํŽ˜์ด์ง€
๋ฏธํŒ…ํŽ˜์ด์ง€
๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€ ๋ฏธํŒ…ํŽ˜์ด์ง€
ํ”„๋กœํ•„ํŽ˜์ด์ง€
ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€ ํ”„๋กœํ•„ํŽ˜์ด์ง€

๐Ÿ—๏ธ ์•„ํ‚คํ…์ณ

Group 8

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

๊ธฐ์ˆ  ์Šคํƒ

์ƒ์„ธ ๊ธฐ์ˆ  ์Šคํƒ

๋”๋ณด๊ธฐ

๐Ÿ“‚ ํŒŒ์ผ ๊ตฌ์กฐ

ํ”„๋ก ํŠธ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ
๐Ÿ“ฆsrc
 โ”ฃ ๐Ÿ“‚api
 โ”ฃ ๐Ÿ“‚assets
 โ”ƒ โ”ฃ ๐Ÿ“‚fonts
 โ”ƒ โ”ฃ ๐Ÿ“‚icons
 โ”ƒ โ”ฃ ๐Ÿ“‚imgs
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚profiles
 โ”ƒ โ”— ๐Ÿ“‚styles
 โ”ฃ ๐Ÿ“‚components
 โ”ƒ โ”ฃ ๐Ÿ“‚buttonMenu
 โ”ƒ โ”ฃ ๐Ÿ“‚chatList
 โ”ƒ โ”ฃ ๐Ÿ“‚common
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚button
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚container
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dropdown
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚input
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚overlay
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚profile
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚slideMenu
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚tab
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚tooltip
 โ”ƒ โ”ฃ ๐Ÿ“‚dialoglist
 โ”ƒ โ”ฃ ๐Ÿ“‚drawing
 โ”ƒ โ”ฃ ๐Ÿ“‚grade
 โ”ƒ โ”ฃ ๐Ÿ“‚header
 โ”ƒ โ”ฃ ๐Ÿ“‚langList
 โ”ƒ โ”ฃ ๐Ÿ“‚loading
 โ”ƒ โ”ฃ ๐Ÿ“‚modal
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚login
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚match
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚matchhome
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚meeting
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚mypage
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚wordBook
 โ”ƒ โ”ฃ ๐Ÿ“‚musicPlayer
 โ”ƒ โ”ฃ ๐Ÿ“‚profileBar
 โ”ƒ โ”ฃ ๐Ÿ“‚progressBar
 โ”ƒ โ”ฃ ๐Ÿ“‚ScriptEditor
 โ”ƒ โ”ฃ ๐Ÿ“‚starRate
 โ”ƒ โ”ฃ ๐Ÿ“‚validationList
 โ”ƒ โ”— ๐Ÿ“‚videoFrame
 โ”ฃ ๐Ÿ“‚config
 โ”ฃ ๐Ÿ“‚features
 โ”ƒ โ”ฃ ๐Ÿ“‚Meeting
 โ”ƒ โ”— ๐Ÿ“‚User
 โ”ฃ ๐Ÿ“‚hooks
 โ”ƒ โ”ฃ ๐Ÿ“‚whiteboard
 โ”ฃ ๐Ÿ“‚Layout
 โ”ฃ ๐Ÿ“‚pages
 โ”ƒ โ”ฃ ๐Ÿ“‚Error
 โ”ƒ โ”ฃ ๐Ÿ“‚home
 โ”ƒ โ”ฃ ๐Ÿ“‚login
 โ”ƒ โ”ฃ ๐Ÿ“‚match
 โ”ƒ โ”ฃ ๐Ÿ“‚meeting
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚screen
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚slide
 โ”ƒ โ”ฃ ๐Ÿ“‚mypage
 โ”ƒ โ”ฃ ๐Ÿ“‚signup
 โ”ฃ ๐Ÿ“‚store
 โ”ฃ ๐Ÿ“‚utils
 โ”ฃ ๐Ÿ“œApp.jsx
 โ”ฃ ๐Ÿ“œmain.jsx
 โ”— ๐Ÿ“œrouter.jsx

๋ฐฑ์—”๋“œ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ
๐Ÿ“ฆairlingo
โ”ฃ ๐Ÿ“‚domain
 โ”ƒ โ”ฃ ๐Ÿ“‚chat
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚content
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚language
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚matching
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚report
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚study
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”ฃ ๐Ÿ“‚user
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ƒ โ”— ๐Ÿ“‚word
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚controller
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dto
 โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚request
 โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“‚response
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚repository
 โ”ƒ โ”ƒ โ”— ๐Ÿ“‚service
 โ”ฃ ๐Ÿ“‚global
 โ”ƒ โ”ฃ ๐Ÿ“‚config
 โ”ƒ โ”ฃ ๐Ÿ“‚entity
 โ”ƒ โ”ฃ ๐Ÿ“‚exception
 โ”ƒ โ”ฃ ๐Ÿ“‚handler
 โ”ƒ โ”ฃ ๐Ÿ“‚openvidu
 โ”ƒ โ”ฃ ๐Ÿ“‚rabbitmq
 โ”ƒ โ”ฃ ๐Ÿ“‚response
 โ”ƒ โ”— ๐Ÿ“‚util
 โ”— ๐Ÿ“œAirlingoApplication.java

๐Ÿ“ ์„ค๊ณ„ ๋ฌธ์„œ

ERD

ERD
ERD ํŽ˜์ด์ง€

API

์ „์ฒด ๋ฌธ์„œ
์ „์ฒด ๋ฌธ์„œ ํŽ˜์ด์ง€
Request
Request ํŽ˜์ด์ง€
Response
Response ํŽ˜์ด์ง€

FIGMA

FIGMA
ํ”ผ๊ทธ๋งˆ ํŽ˜์ด์ง€

๐Ÿ“š ์ปจ๋ฒค์…˜

Ground Rule

ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ ํ‘œ์‹œ/์ˆจ๊ธฐ๊ธฐ

GROUND RULE

๐Ÿฅ‡ ํ”„๋กœ์ ํŠธ ์ˆ˜์น™

๐Ÿ’ป ํšŒ์˜ ์ง„ํ–‰

  1. ๋งค์ผ ์˜ค์ „ 9์‹œ, ์˜คํ›„ 5์‹œ 2ํšŒ์— ๊ฑธ์ณ **๋ฐ์ผ๋ฆฌ ์Šคํฌ๋Ÿผ(Daily Scrum)**์„ ์ง„ํ–‰ํ•ด, ๊ฐœ์ธ๋ณ„ ๋‹น์ผ ๋ชฉํ‘œ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์ง„ํ–‰ ์ƒํ™ฉ์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  2. ๋งค์ฃผ ๊ธˆ์š”์ผ ์˜คํ›„ 5์‹œ์— **์Šคํ”„๋ฆฐํŠธ ์„ธ์…˜(Sprint Session)**์„ ์ง„ํ–‰ํ•ด ์ผ์ฃผ์ผ๊ฐ„ ํ”„๋กœ์ ํŠธ์˜ ์ง„ํ–‰ ์ƒํ™ฉ ๋ฐ ์ถ”ํ›„ ์ง„ํ–‰ ๋ชฉํ‘œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ฐ์ผ๋ฆฌ ์Šคํฌ๋Ÿผ๊ณผ ์Šคํ”„๋ฆฐํŠธ ์„ธ์…˜์€ ํŒ€์žฅ์ด ํšŒ์˜๋ฅผ ์ฃผ์žฌํ•˜๊ณ , ๋‹ค๋ฅธ ํŒ€์›๋“ค์ด ๋Œ์•„๊ฐ€๋ฉฐ ํšŒ์˜๋ก์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  4. ํšŒ์˜์— ์ ๊ทน์ ์œผ๋กœ ์ฐธ์—ฌํ•˜๊ณ , ํŒ€์žฅ์˜ ์ง€๋ชฉ์— ๋”ฐ๋ผ ๋ณธ์ธ์˜ ์˜๊ฒฌ์„ ๋ฐ˜๋“œ์‹œ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ์ฝ”๋“œ ๋ฆฌ๋ทฐ

  1. **์ฝ”๋“œ ๋ฆฌ๋ทฐ(Code Review)**๋Š” ์ ์‹ฌ์‹œ๊ฐ„์„ ํ™œ์šฉํ•ด ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ๊ฐ„๋‹จํžˆ 30๋ถ„ ๋™์•ˆ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  2. ์„œ๋กœ ๋‹ค๋ฅธ ์ฝ”๋“œ ์Šคํƒ€์ผ์„ ํ•ฉ์˜ํ•œ **์ฝ”๋”ฉ ์ปจ๋ฒค์…˜(Coding Convention)**์— ๋”ฐ๋ผ ์ผ์›ํ™”ํ•ฉ๋‹ˆ๋‹ค.
  3. ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋Š” ์šฐ์„ ์ˆœ์œ„์— ๋”ฐ๋ผ ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰ํ•˜๋ฉฐ, ์‚ฌ์†Œํ•œ ์˜๊ฒฌ์„ ๋ฐ˜์˜ํ•  ์ง€์— ๋Œ€ํ•œ ๋ถ€๋ถ„์€ ์ฝ”๋“œ ์ž‘์„ฑ์ž๊ฐ€ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ์ฝ”๋“œ ์ž‘์„ฑ

  1. ์—๋Ÿฌ(Error)๊ฐ€ ๋ฐœ์ƒ ์‹œ 1์‹œ๊ฐ„ ์ •๋„๋Š” ํ˜ผ์ž์„œ ๊ณ ๋ฏผํ•ด๋ณด๊ณ , ํ•ด๊ฒฐ์ด ๋˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ํŒ€์›๋“ค๊ณผ ๋ฐ”๋กœ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  2. ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ๋ฏผํ•œ ๋‚ด์šฉ ๋ฐ ํ•ด๊ฒฐ ๊ณผ์ •์€ ๋…ธ์…˜์— ์ •๋ฆฌํ•˜์—ฌ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  3. ์ฝ”๋“œ์— ์ฃผ์„(Comment)์„ ์ž‘์„ฑํ•˜๋Š” ์Šต๊ด€์„ ์ƒํ™œํ™”ํ•˜์—ฌ, ๋‹ค๋ฅธ ํŒ€์›๋“ค์ด ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  4. ๊ธฐ๋Šฅ์˜ ๊ตฌํ˜„ ์›๋ฆฌ๋ฅผ ๊ณต๋ถ€ํ•˜๊ณ  ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์˜คํ”ˆ ์†Œ์Šค(Open Source) ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์„ ์›์น™์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ๊นƒ ๊ด€๋ฆฌ

  1. ํ’€๋ฆฌํ€˜์ŠคํŠธ(Pull Request)๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ, ์ด๋ฅผ ํ™•์ธํ–ˆ๋‹ค๋Š” ์˜๋ฏธ์—์„œ ์ตœ์†Œํ•œ 1๊ฐœ ์ด์ƒ์˜ ์˜๊ฒฌ์„ ๋‚จ๊ฒจ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  2. ํ’€๋ฆฌํ€˜์ŠคํŠธ ์‹œ ์˜๊ฒฌ ๊ฐˆ๋“ฑ์ด ์ƒ๊ฒผ๋‹ค๋ฉด, ์ถฉ๋ถ„ํ•œ ํ† ๋ก ๊ณผ ์˜๊ฒฌ ์ˆ˜๋ ด ๊ณผ์ •์„ ๊ฑฐ์ณ ๋‹ค์ˆ˜์˜ ์˜๊ฒฌ์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. ์ปค๋ฐ‹(Commit)ํ•˜๊ธฐ ์ „์— ๊ณ ์น  ๋ถ€๋ถ„์„ ํ•œ ๋ฒˆ ๋” ์ ๊ฒ€ํ•ฉ๋‹ˆ๋‹ค.
  4. 1๊ฐ€์ง€ ๊ธฐ๋Šฅ ๋˜๋Š” 1๊ฐ€์ง€ ํ•จ์ˆ˜๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“ค ๋•Œ๋งˆ๋‹ค ์ปค๋ฐ‹ํ•˜๋Š” ์Šต๊ด€์„ ์ƒํ™œํ™”ํ•ฉ๋‹ˆ๋‹ค.
  5. **์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€(Commit Message)**๋Š” ํ•ฉ์˜ํ•œ **์ปค๋ฐ‹ ์ปจ๋ฒค์…˜(Commit Convention)**์— ๋”ฐ๋ผ ์ตœ๋Œ€ํ•œ ์ƒ์„ธํ•˜๊ฒŒ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  6. ๊นƒ ๋ธŒ๋žœ์น˜(Branch) ๊ทœ์น™์— ๋”ฐ๋ผ ๋ธŒ๋žœ์น˜๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ , ๋ชจ๋“  ์ž‘์—…์€ ์˜ฌ๋ฐ”๋ฅธ ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿฅˆ ์ƒํ™œ ์ˆ˜์น™

๐Ÿ’ป ๊ฐœ์ธ ์ผ์ • ๊ด€๋ฆฌ ๋ฐ ์—ฐ๋ฝ

  1. ๊ฐœ์ธ ์ผ์ •์ด ์ƒ๊ธด ๊ฒฝ์šฐ ๋ฐ˜๋“œ์‹œ ๋ฏธ๋ฆฌ ๋‹ค๋ฅธ ํŒ€์›๋“ค์—๊ฒŒ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  2. ํ”„๋กœ์ ํŠธ ์ค‘๊ฐ„์— ์ทจ์—… ๋“ฑ์œผ๋กœ ์ˆ˜๋ฃŒํ•˜๊ฒŒ ๋œ ๊ฒฝ์šฐ, ๋„์˜์  ์ฐจ์›์—์„œ ๊ณตํ†ต ํ”„๋กœ์ ํŠธ๋ฅผ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ  ๊ฐ€์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. ์นด์นด์˜คํ†ก(KakaoTalk), ๋””์Šค์ฝ”๋“œ(Discord), ๋งคํ„ฐ๋ชจ์ŠคํŠธ(Mattermost) ๋“ฑ์„ ํ†ตํ•œ ์—ฐ๋ฝ์„ ํ™•์ธํ–ˆ์„ ๋•Œ๋Š”, ํ™•์ธํ–ˆ๋‹ค๋Š” ์˜๋ฏธ์˜ ๋‹ต๋ณ€ ๋˜๋Š” ์ด๋ชจ์ง€(Emoji)๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  4. ๋งค์ฃผ ๊ธˆ์š”์ผ ๋…ผ์˜ํ•ด, ์ฃผ๋ง ์ค‘ ํ•˜๋ฃจ๋Š” ์ŠคํŠธ๋ ˆ์Šค ๊ด€๋ฆฌ ๋ฐ ๊ฐœ์ธ ๊ณต๋ถ€๋ฅผ ์œ„ํ•œ ์‹œ๊ฐ„์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ๊ฐœ์ธ ๊ฑด๊ฐ• ๋ฐ ์œ„์ƒ ๊ด€๋ฆฌ

  1. ๊ต์œก์žฅ์—์„œ ํ‡ด์‹คํ•˜๊ธฐ ์ „์— ์ž๊ธฐ ์ž๋ฆฌ๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌ์ •๋ˆํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ชธ์ด ์•„ํ”„๋ฉด, ๋ฏธ์•ˆํ•ดํ•˜์ง€ ์•Š๊ณ  ๋น ๋ฅด๊ฒŒ ํšŒ๋ณตํ•  ์ˆ˜ ์žˆ๋„๋ก ํ‘น ์‰ฌ๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ฐฅ์„ ๋“ ๋“ ํžˆ ๋จน๊ณ , ๊ตถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. โ€œ์ž˜ ๋จน๊ณ  ์ฃฝ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋•Œ๊น”๋„ ๊ณฑ์Šต๋‹ˆ๋‹ค.โ€

๐Ÿฅ‰ ๋งˆ์ธ๋“œ์…‹ ์ˆ˜์น™

๐Ÿ’ป ๋งˆ์ธ๋“œ์…‹

  1. ์ ๊ทน์„ฑ : ํšŒ์˜๋‚˜ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋•Œ ์˜๊ฒฌ์ด ์žˆ๋‹ค๋ฉด ๋ง์„ค์ด์ง€ ์•Š๊ณ  ์˜๊ฒฌ์„ ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. โ€œ๋งํ• ๊นŒ ๋ง๊นŒ ํ•  ๋•Œ๋Š” ๋งํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€
  2. ๊ธ์ •์ ์ธ ํƒœ๋„ : ํ”„๋กœ์ ํŠธ์— ์ž„ํ•  ๋•Œ๋Š” ์›ƒ์œผ๋ฉด์„œ ์žฌ๋ฏธ์žˆ๊ฒŒ ํ•ฉ์‹œ๋‹ค. โ€œํ–‰๋ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์›ƒ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ  ์›ƒ๊ธฐ ๋•Œ๋ฌธ์— ํ–‰๋ณตํ•ฉ๋‹ˆ๋‹ค.โ€
  3. ์†Œํ†ต : ๋‹ค๋ฅธ ํŒ€์›์˜ ์˜๊ฒฌ์„ ์กด์ค‘ํ•˜๊ณ , ๋ง์„ ๋Š์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜๊ฒฌ์ด ๋‹ค๋ฅด๋ฉด, ๋Œ€ํ™”๋ฅผ ํ†ตํ•ด ํƒ€ํ˜‘์ ์„ ์ฐพ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  4. ํ˜‘๋ ฅ : ํŒ€์›์ด ํž˜๋“ค์–ดํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด, ์›ƒ์œผ๋ฉด์„œ ๋„์™€์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋„์›€์„ ์ค„์ˆ˜๋ก ๋‚˜์˜ ์‹ค๋ ฅ๋„ ํ•จ๊ป˜ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค.
  5. ์‹ ๋ขฐ : ๋‹ค๋ฅธ ํŒ€์›๋“ค์˜ ์ฑ…์ž„๊ฐ๊ณผ ์‹ค๋ ฅ์— ๋Œ€ํ•ด ๋ฏฟ์Œ์„ ์žƒ์ง€ ๋ง™์‹œ๋‹ค.

Git Commit

ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ ํ‘œ์‹œ/์ˆจ๊ธฐ๊ธฐ

COMMIT CONVENTION

  • Commit ๋ฉ”์„ธ์ง€ ๊ตฌ์กฐ
    • ex) โœจ feat : Add sign in page #S09P11A308-52
<emoji> <type> : <subject> <Jira ticket number> // ํ•„์ˆ˜
// ๋นˆ ํ–‰์œผ๋กœ ๊ตฌ๋ถ„
<body>      // ์ƒ๋žต๊ฐ€๋Šฅ
// ๋นˆ ํ–‰์œผ๋กœ ๊ตฌ๋ถ„
<footer>    // ์ƒ๋žต๊ฐ€๋Šฅ

Git Branch

ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ ํ‘œ์‹œ/์ˆจ๊ธฐ๊ธฐ

๋ธŒ๋žœ์น˜ ๋ช…๋ช… ์ปจ๋ฒค์…˜

BRANCH NAMING CONVENTION

Git flow

  • ex) feat/{์ด์Šˆ ํ‚ค}-{BE/FE}-{์ด์Šˆ ์š”์•ฝ}

  • master / main - ์ œํ’ˆ์œผ๋กœ ์ถœ์‹œ ๋ฐ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ์ธ ๋ธŒ๋žœ์น˜ โ†’ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฌผ ์ œ์ถœ ์šฉ๋„

  • develop - ๋‹ค์Œ ์ถœ์‹œ ๋ฒ„์ „์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜ โ†’ ๊ธฐ๋Šฅ ์™„์„ฑ ํ›„ ์ค‘๊ฐ„์— ์ทจํ•ฉํ•˜๋Š” ์šฉ๋„

  • feature - ๊ฐ์ข… ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜ โ†’ feat/login, feat/join ๋“ฑ์œผ๋กœ ๊ธฐ๋Šฅ ๋ถ„๋ฅ˜ ํ›„ ์ž‘์—…

  • hotfix - ์ถœ์‹œ ๋ฒ„์ „์—์„œ ๋ฐœ์ƒํ•œ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ธŒ๋žœ์น˜

Codding

ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ ํ‘œ์‹œ/์ˆจ๊ธฐ๊ธฐ

CODING CONVENTION

  • 1๋ฌธ์ž์˜ ์ด๋ฆ„์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ๋„ค์ž„์ŠคํŽ˜์ด์Šค, ์˜ค๋ธŒ์ ํŠธ, ํ•จ์ˆ˜ ๊ทธ๋ฆฌ๊ณ  ์ธ์Šคํ„ด์Šค์—๋Š” camelCase๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค ex) camelCase
  • ํด๋ž˜์Šค๋‚˜ constructor์—๋Š” PascalCase๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ex) PascalCase
  • ์•ฝ์–ด ๋ฐ ์ด๋‹ˆ์…œ์€ ํ•ญ์ƒ ๋ชจ๋‘ ๋Œ€๋ฌธ์ž์ด๊ฑฐ๋‚˜ ๋ชจ๋‘ ์†Œ๋ฌธ์ž์—ฌ์•ผ ํ•œ๋‹ค. ex) NFT
  • ํด๋ž˜์Šค๋ช…๊ณผ ๋ณ€์ˆ˜๋ช…์€ ๋ช…์‚ฌ ์‚ฌ์šฉ
  • ๋ฉ”์„œ๋“œ๋ช…์€ ๋™์‚ฌ ์‚ฌ์šฉ
  • ์ƒ์ˆ˜๋ช…์€ ๋Œ€๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ๋‹จ์–ด์™€ ๋‹จ์–ด ์‚ฌ์ด๋Š” _๋กœ ์—ฐ๊ฒฐํ•œ๋‹ค.
  • component๋Š” PascalCase๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

Jira

ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ ํ‘œ์‹œ/์ˆจ๊ธฐ๊ธฐ

JIRA CONVENTION

  1. ๋งค์ฃผ ์›”์š”์ผ ์˜ค์ „ ์Šคํฌ๋Ÿผ ํšŒ์˜ ์ดํ›„ ๊ฐ์ž์˜ ์ด์Šˆ ํ‹ฐ์ผ“์„ ์ƒ์„ฑํ•œ๋‹ค.
  2. ์ด์Šˆ ์ƒ์„ฑ ์‹œ ํ™•์ธํ•ด์•ผ ํ•  ๋ถ€๋ถ„
    • ๋‹ด๋‹น์ž๊ฐ€ ๋ณธ์ธ์œผ๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€
    • ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์ง€์ •๋˜์–ด ์žˆ๋Š”์ง€ (FE, BE, ๊ณตํ†ต ์ค‘ ํƒ1)
    • Epic Link๊ฐ€ ์ง€์ •๋˜์–ด ์žˆ๋Š”์ง€ (์„ค๊ณ„, FE๊ฐœ๋ฐœ, BE๊ฐœ๋ฐœ, ํšŒ์˜, ํ•™์Šตโ€ฆ)
    • ์Šคํ”„๋ฆฐํŠธ์˜ ์ด Story Points๊ฐ€ 40 ์ด์ƒ์ธ์ง€
  3. ์ด์Šˆ ํ‹ฐ์ผ“ ์ด๋ฆ„์€ [๋ง๋จธ๋ฆฌ] ๊ตฌ์ฒด์ ์ธ ๊ธฐ๋Šฅ ์œผ๋กœ ์ ๋Š”๋‹ค.
    • ****************************๊ธฐ๋Šฅ ๊ด€๋ จ ์ด์Šˆ์ผ ๊ฒฝ์šฐ **************[๋ง๋จธ๋ฆฌ]**************๋Š” ๊ธฐ๋Šฅ ๋ช…์„ธ์„œ์˜ ๋Œ€๋ถ„๋ฅ˜๋ฅผ ๋”ฐ๋ฅธ๋‹ค.
  4. ๋งค์ผ ์˜ค์ „ ์Šคํฌ๋Ÿผ ํšŒ์˜ ์ดํ›„ ๊ทธ ๋‚  ์ฒ˜๋ฆฌํ•  ์ด์Šˆ ํ‹ฐ์ผ“์„ ์ง„ํ–‰ ์ค‘์œผ๋กœ ์ด๋™์‹œํ‚จ๋‹ค.
    • ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ด์Šˆ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ๋งˆ๋‹ค ์™„๋ฃŒ ์ฒ˜๋ฆฌํ•œ๋‹ค.

๐Ÿ“„ ๋ฌธ์„œ ์ •๋ฆฌ

ํšŒ์˜๋ก

ํŽ˜์ด์ง€ ์ „์ฒด ๋ชจ์Šต
์ „์ฒด ํŽ˜์ด์ง€ ์ „์ฒด ํŽ˜์ด์ง€ ์ „์ฒด ํŽ˜์ด์ง€
๊ธฐํš ํšŒ์˜๋ก ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต
๊ธฐํš ํšŒ์˜๋ก ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต
์Šคํฌ๋Ÿผ ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต
์Šคํฌ๋Ÿผ ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต
์Šคํ”„๋ฆฐํŠธ ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต
์Šคํ”„๋ฆฐํŠธ ํŽ˜์ด์ง€ ์„ธ๋ถ€ ๋ชจ์Šต

๋ฒ„๊ทธ ๋ฆฌํฌํŠธ

ํŽ˜์ด์ง€ ์ „์ฒด ๋ชจ์Šต
์ „์ฒด ํŽ˜์ด์ง€
์„ธ๋ถ€ ํŽ˜์ด์ง€ ๋ชจ์Šต
์ „์ฒด ํŽ˜์ด์ง€

์ง€์‹ ๊ณต์œ 

ํŽ˜์ด์ง€ ์ „์ฒด ๋ชจ์Šต
์ „์ฒด ํŽ˜์ด์ง€
์„ธ๋ถ€ ํŽ˜์ด์ง€ ๋ชจ์Šต
์ „์ฒด ํŽ˜์ด์ง€

๐Ÿ’ป ๊ตฌ๋™ ๋ฐฉ๋ฒ•

  • ๋กœ์ปฌ ๊ตฌ๋™ ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  1. clone Project
git clone https://lab.ssafy.com/s09-webmobile1-sub2/AirLingo.git
  1. change path to /frontend/airlingo
npm i --legacy-peer-deps
  1. create .env file in /frontend/airlingo/
VITE_SERVER_URL={your_server_url}
VITE_SOCKET_URL={your_socket_url}
VITE_CHAT_SOCKET_URL={your_chat_socket_url}
  1. input frontend run script
npm run dev
  1. change path to /backend/airlingo/src/main/resources
application.yml

cloud:
  aws:
    s3:
      bucket: ${your-bucket-name}
    credentials:
      accessKey: ${your-access-key}
      secretKey: ${your-secret-key}
    region:
      static: ap-northeast-2
      auto: false
    stack:
      auto: false
application-dev.yml

spring:
  jpa:
    hibernate:
      ddl-auto: create #create update none
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: ${your-db-url}
    username: ${your-db-username}
    password: ${your-db-password}
  rabbitmq:
    host: localhost
    port: 5672
    username: ${your-rabbitmq-username}
    password: ${your-rqbbitmq-password}
    
openviduUrl: ${your-openvidu-url}
openviduSecret: ${your-openvidu-secret}
  1. install docker,openvidu,redis,rabbitmq
  2. run openvidu
docker run -p 4443:4443 --rm -e OPENVIDU_SECRET=MY_SECRET openvidu/openvidu-dev:2.28.0
  1. change path /matching/airlingo
  2. run docker-compose.yaml for rabbitmq
  3. run backend,matching program

๐Ÿ’พ ๊ฒฐ๊ณผ๋ฌผ

UCC

https://youtu.be/8numB_R7RLE

์‹œ์—ฐ ์˜์ƒ

https://www.youtube.com/watch?v=WcZEspXgMLA

PPT


โค ํŒ€ ์†Œ๊ฐœ

ํŒ€๋ช…

๐Ÿ“ข ์•ˆ๋…•ํ•˜์„ธ์š”! ์‚ผ์„ฑ ์ฒญ๋…„ ์†Œํ”„ํŠธ์›จ์–ด ์•„์นด๋ฐ๋ฏธ(SSAFY) ์„œ์šธ 3๋ฐ˜ ๊ต์œก์ƒ์œผ๋กœ ์กฐ์ง๋œ ํ”„๋กœ์ ํŠธ ํŒ€ โ€˜๊ฐœ๋ฐœ์ž๋“คโ€™์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๊ณผ์ •์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ํŒ€์› ๊ฐ„ ๊ณต์œ ํ•˜๊ณ  ํ•ด๊ฒฐ์ฑ…์„ ๋ชจ์ƒ‰ํ•˜๋ฉด์„œ ํ•จ๊ป˜ ์„ฑ์žฅํ•˜๋Š” ๊ธฐํšŒ๋กœ ์‚ผ๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

ํŒ€๋ช…์˜ ์˜๋ฏธ

๊ฐ์ข… ์˜ํ™”๋‚˜ ๋ฌธํ™” ์ฝ˜ํ…์ธ ์—์„œ ์‚ฌ์šฉํ•˜๋Š” โ€˜~๋“คโ€™์˜ ํ‘œํ˜„์„ ์‚ฌ์šฉํ•ด ๋ฏธ๋ž˜์˜ ๊ฐœ๋ฐœ์ž๋ฅผ ๊ฟˆ๊พธ๋Š” ์—ฌ์„ฏ ๋ช…์˜ ํŒ€์›์ด ๋ชจ์˜€๋‹ค๋Š” ์˜๋ฏธ๋ฅผ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค.

Frontend

๊ณ ๊ฑด ๊น€์ˆ˜ํ™˜

Backend

๊น€ํ•˜๋ฆผ ๋ฌธ์ˆ˜์ • ๋ฐ•์‹œ๊ท  ์˜ค์œ ์ •

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages