/Server

Primary LanguageJava

⭐ Stack

πŸ“Œ Project Structure

Untitled (34)

(이미지 좜처: μš°μ•„ν•œ 기술 λΈ”λ‘œκ·Έ)

λ©€ν‹° λͺ¨λ“ˆ ν”„λ‘œμ νŠΈλ‘œ κ΅¬μ„±ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

  • independent available:
    • infra-mysql
    • infra-redis
  • system domain:
    • domain-integrated
  • in system available:
    • support:upload
    • support:github-client
    • support:reply-event-publisher
    • support:room-event-publisher
  • application:
    • app:external-api
    • app:match-websocket
    • app:chat-websocket

πŸ“š Entity Relationship Diagram

Untitled (17)

핡심 κΈ°λŠ₯ μ†Œκ°œ

2. GPT와 ν•™μŠ΅ (GPT λ©΄μ ‘κ΄€)

2024-03-1010 44 54-ezgif com-video-to-gif-converter (2)

μ§ˆλ¬Έμ— λŒ€ν•œ 닡변을 ν•˜λ©΄ GPTκ°€ 닡변에 λŒ€ν•΄ λΆ€μ‘±ν•œ 점을 ν”Όλ“œλ°±ν•˜κ±°λ‚˜ μƒˆλ‘œμš΄ κΌ¬λ¦¬μ§ˆλ¬Έμ„ ν•©λ‹ˆλ‹€.
이후에 μ‚¬μš©μžλŠ” κΌ¬λ¦¬μ§ˆλ¬Έμ— λŒ€λ‹΅ν•˜κ±°λ‚˜ λͺ¨λ₯΄λŠ” 것에 λŒ€ν•΄ λ¬Όμ–΄λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

3. μ‚¬λžŒκ³Ό ν•¨κ»˜ ν•™μŠ΅ (λ™λ£Œν•™μŠ΅)

Untitled (30)
GPTκ°€ μ•„λ‹Œ μ‚¬λžŒκ³Όλ„ ν•™μŠ΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
λ™λ£Œ 맀칭은 관심사(운영체제, λ„€νŠΈμ›Œν¬, μ•Œκ³ λ¦¬μ¦˜ λ“±)와 λ ˆμ΄νŒ…, λŒ€κΈ°μ‹œκ°„μ„ μ°Έκ³ ν•˜λŠ” 맀칭 μ‹œμŠ€ν…œμ„ ν†΅ν•΄μ„œ μ΄λ£¨μ–΄μ§‘λ‹ˆλ‹€.

4. 빈좜 ν‚€μ›Œλ“œ

Untitled (31)
빈좜 ν‚€μ›Œλ“œλŠ”  ν•™μŠ΅ 보쑰 μˆ˜λ‹¨μž…λ‹ˆλ‹€.
λͺ¨λ₯΄λŠ” 것을 μ§ˆλ¬Έν•  λ•Œ, ν˜Ήμ€ λŒ€λ‹΅ν•  λ•Œ μ‚¬μš©μžλŠ” 빈좜 ν‚€μ›Œλ“œμ˜ 도움을 받을 수 μžˆμŠ΅λ‹ˆλ‹€.
빈좜 ν‚€μ›Œλ“œλŠ” 제좜된 μ‚¬μš©μžλ“€μ˜ 닡변을 ν† ν°ν™”ν•˜μ—¬ 톡계λ₯Ό λ‚΄μ—ˆμ„ λ•Œ, κ°€μž₯ λ§Žμ€ λΉˆλ„λ‘œ μ‚¬μš©λœ 단어 3개λ₯Ό κ°€λ¦¬ν‚΅λ‹ˆλ‹€.

5. μžλ™ κΉƒν—ˆλΈŒ λ ˆν¬μ§€ν† λ¦¬ μ—…λ°μ΄νŠΈ

Untitled (32)
μ œμΆœν•œ 닡변은 μ‚¬μš©μžμ˜ Github λ ˆν¬μ§€ν† λ¦¬μ— μžλ™μœΌλ‘œ μ—…λ°μ΄νŠΈ λ©λ‹ˆλ‹€.
Github OAuth 와 Rest API for Github Repository λ₯Ό μ‚¬μš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
이λ₯Ό 톡해 μžμ‹ λ§Œμ˜ 닡변을 μ™„μ„±ν•΄ λ‚˜κ°ˆ 수 있으며 μ§€μ‹κ³΅μœ  및 μ €μž₯이 κ°€λŠ₯ν•©λ‹ˆλ‹€.

6. ν•™μŠ΅ 이λ ₯ 쑰회

Untitled (33)
μ‚¬μš©μžμ˜ λ‹΅λ³€, GPT ν˜Ήμ€ λ™λ£Œμ™€μ˜ λŒ€ν™”λ“€μ€ μ €μž₯되고 이후에도 μ‘°νšŒν•  수 μžˆμŠ΅λ‹ˆλ‹€.

7. μœ μ € 및 인증/인가 λͺ¨λ“ˆ

  • Github OAuth2 νšŒμ›κ°€μž…/둜그인
  • Session 기반 μœ μ € 인증

8. ν΄λΌμ΄μ–ΈνŠΈ 개발

  • Thymeleaf
  • Tailwind CSS