Skip to content

taco9590/HowAreYou-server

Β 
Β 

Repository files navigation

Image

0. Getting Started (μ‹œμž‘ν•˜κΈ°)

$ ./gradlew bootRun
$ docker compose up -d

μ„œλΉ„μŠ€ μ£Όμ†Œ: ν•˜μš°μ•„μœ 


1. Project Overview (ν”„λ‘œμ νŠΈ κ°œμš”)

  • ν”„λ‘œμ νŠΈ 이름: HowAreYou (ν•˜μš°μ•„μœ )
  • ν”„λ‘œμ νŠΈ μ„€λͺ…: μ™Έκ΅­μ–΄ ν•™μŠ΅(μ˜μ–΄-ν•œκ΅­μ–΄)을 μœ„ν•œ μ–Έμ–΄κ΅ν™˜ ν”Œλž«νΌ μž…λ‹ˆλ‹€. λ‹€λ₯Έμ‚¬λžŒκ³Ό λŒ€ν™”λ₯Ό λ‚˜λˆ  단어μž₯을 μƒμ„±ν•˜κ³ , λŒ€ν™”μ™€ 관심사λ₯Ό κΈ°λ°˜μœΌλ‘œν•œ μ‚¬μš©μž 맞좀 μΆ”μ²œ, λ§Œλ“€μ–΄μ§„ 단어μž₯으둜 ν€΄μ¦ˆλ₯Ό 생성해 ν•™μŠ΅μ„ν•΄λ³΄μ„Έμš”!

2. Team Members (νŒ€μ› 및 νŒ€ μ†Œκ°œ)

BE BE BE BE BE
μ—„μ•„μ˜ κ³ ν˜•μ€€ 문성원 박상화 μ΄μ€μ„œ
GitHub GitHub GitHub GitHub GitHub

3. Key Features (μ£Όμš” κΈ°λŠ₯)

  • μ±„νŒ…

    • μ‹€μ‹œκ°„ WebSocket μ±„νŒ…
    • μ±„νŒ…λ°©λ³„ λŒ€ν™”κΈ°λ‘ 원문/λ²ˆμ—­λ³Έ λ‘˜λ‹€ μ €μž₯
  • μ±„νŒ… 기반 단어 μΆ”μΆœ

    • NLP 기반 단어 뢄석 및 μΆ”μΆœ
    • κ°œμΈλ³„ 단어μž₯ μžλ™ μ €μž₯
  • μ•Œλ¦Ό κΈ°λŠ₯

    • λ°›λŠ”μ‚¬λžŒμ΄ μ˜€ν”„λΌμΈμΈμ§€ ν™•μΈν•˜λŠ” ν—¬μŠ€μ²΄ν¬
    • μ˜€ν”„λΌμΈμΈ 경우 μ•Œλ¦Όμˆ˜μ‹ 
  • λ§žμΆ€ν˜• ν€΄μ¦ˆ 생성 & ν•™μŠ΅

    • Daily Quiz (일일 ν€΄μ¦ˆ)
    • Random Quiz (랜덀 ν€΄μ¦ˆ)
  • μΆ”μ²œ μ‹œμŠ€ν…œ

    • μ‚¬μš©μžμ˜ 단어 ν•™μŠ΅ μ„±ν–₯ 기반 μΆ”μ²œ
    • λ§žμΆ€ν˜• 단어/ν€΄μ¦ˆ μΆ”μ²œ
  • λ§ˆμ΄νŽ˜μ΄μ§€ λŒ€μ‹œλ³΄λ“œ

    • ν€΄μ¦ˆ κ²°κ³Ό 및 μ •λ‹΅λ₯  μ‹œκ°ν™”
    • κ°œμΈλ³„ ν•™μŠ΅ ν˜„ν™© 관리

3.1 차별점

ꡬ뢄 HowAreYou κΈ°μ‘΄ μ„œλΉ„μŠ€
ν•™μŠ΅ 데이터 μ‹€μ‹œκ°„ μ±„νŒ… 단어 μΆ”μΆœ 사전 μž…λ ₯/μˆ˜λ™ 등둝 및 이미 λ§Œλ“€μ–΄μ§„ 데이터
ν•™μŠ΅ 방식 단어μž₯ β†’ ν€΄μ¦ˆ μžλ™ 생성 단어 μ•”κΈ° 쀑심
ν•™μŠ΅ ν”Όλ“œλ°± ν€΄μ¦ˆ κ²°κ³Ό 기반 κ°œμΈν™” 뢄석/μΆ”μ²œ λ‹¨μˆœ μ •μ˜€λ‹΅ 확인

4. Tasks & Responsibilities (μž‘μ—… 및 μ—­ν•  λΆ„λ‹΄)

이름 μ—­ν•  μ£Όμš” μž‘μ—…
μ—„μ•„μ˜ BE
  • μ±„νŒ… β†’ 단어μž₯ 생성 νŒŒμ΄ν”„λΌμΈ ꡬ좕
  • λ‚ μ§œλ³„/전체 단어μž₯ 쑰회 κΈ°λŠ₯
  • λ§ˆμ΄νŽ˜μ΄μ§€ λŒ€μ‹œλ³΄λ“œ
  • 단어μž₯ λΆ€ν•˜ν…ŒμŠ€νŠΈ μ§„ν–‰ 및 μ„±λŠ₯κ°œμ„ 
κ³ ν˜•μ€€ BE
  • 둜그인 및 jwt spring security κ΅¬ν˜„
  • λ§ˆμ΄νŽ˜μ΄μ§€ λŒ€μ‹œλ³΄λ“œ κ΅¬ν˜„
  • μΆ”μ²œμ•Œκ³ λ¦¬μ¦˜ κ΅¬ν˜„
  • μ•Œλ¦ΌκΈ°λŠ₯ κ΅¬ν˜„
  • frontend 연동 및 μ œμž‘
문성원 BE
  • LiberTranslate + Gemini API λ²ˆμ—­ μ„œλ²„ ꡬ좕
  • CICD ꡬ좕 및 배포
  • FastAPI/Spacy ECS 연동
  • k6 λΆ€ν•˜ν…ŒμŠ€νŠΈ μ§„ν–‰ 및 μ„±λŠ₯κ°œμ„ 
박상화 BE
  • WebSocket + Redis 기반 μ‹€μ‹œκ°„ λ©”μ‹œμ§•
  • nlp μ‚¬μš©μž νƒœκ·Έ 벑터 μΆ”μ²œ μ•Œκ³ λ¦¬μ¦˜ κ΅¬ν˜„
  • λ©”μ‹œμ§€ μ €μž₯ λΉ„λ™κΈ°μ²˜λ¦¬ (kafka), μ‚¬μš©μž νƒœκ·Έ 점수 계산 λ¦¬νŒ©ν† λ§
  • mongodb νŒŒμ΄ν”„λΌμΈ ꡬ좕
μ΄μ€μ„œ BE
  • ν€΄μ¦ˆ 생성/제좜/채점 둜직 κ΅¬ν˜„
  • MongoDB + PostgreSQL 데이터 νŒŒμ΄ν”„λΌμΈ
  • K6 λΆ€ν•˜ν…ŒμŠ€νŠΈ 및 μ„±λŠ₯ μ΅œμ ν™”

5. Technology Stack (기술 μŠ€νƒ)

5.1 Language

Imagejava17 / Gradle

5.2 Frontend

React TypeScript

5.3 Backend

,

5.4 Cooperation

Github Discord

5.5 API Test

5.6 Deployment

Image

6. Project Structure (ν”„λ‘œμ νŠΈ ꡬ쑰)

server-dev/
β”œβ”€β”€ docs/                     # λ¬Έμ„œ κ°€μ΄λ“œ
β”œβ”€β”€ fastapi-api/              # NLP νƒœκΉ… μ„œλ²„
β”œβ”€β”€ infra/                    # 인프라 μ„€μ •
β”œβ”€β”€ k6-test/                  # K6 λΆ€ν•˜ν…ŒμŠ€νŠΈ
β”œβ”€β”€ spacy-api/                # Spacy ν˜•νƒœμ†Œ 뢄석 μ„œλ²„
β”œβ”€β”€ src/                      # Spring Boot μ• ν”Œλ¦¬μΌ€μ΄μ…˜
β”‚   └── main/java/org/example/howareyou/
β”‚       β”œβ”€β”€ HowAreYouApplication.java
β”‚       β”œβ”€β”€ domain/
β”‚       β”‚   β”œβ”€β”€ auth/         # 인증/인가
β”‚       β”‚   β”œβ”€β”€ chat/         # μ±„νŒ…
β”‚       β”‚   β”œβ”€β”€ dashboard/    # λ§ˆμ΄νŽ˜μ΄μ§€/λŒ€μ‹œλ³΄λ“œ
β”‚       β”‚   β”œβ”€β”€ member/       # νšŒμ›
β”‚       β”‚   β”œβ”€β”€ quiz/         # ν€΄μ¦ˆ
β”‚       β”‚   └── vocabulary/   # 단어μž₯
β”‚       └── global/           # 곡톡 μ„€μ • 및 μ „μ—­ λͺ¨λ“ˆ
β”‚           β”œβ”€β”€ config/      
β”‚           β”œβ”€β”€ converter/    # JSON, 데이터 λ³€ν™˜κΈ°
β”‚           β”œβ”€β”€ entity/       # 곡톡 μ—”ν‹°ν‹° (BaseEntity)
β”‚           β”œβ”€β”€ exception/    # μ „μ—­ μ˜ˆμ™Έ 처리 
β”‚           β”œβ”€β”€ health/       # ν—¬μŠ€μ²΄ν¬ 및 μƒνƒœ λͺ¨λ‹ˆν„°λ§
β”‚           β”œβ”€β”€ security/     # JWT 인증, Spring Security
β”‚           β”œβ”€β”€ sse/          # SSE(Server-Sent Events) 처리
β”‚           β”œβ”€β”€ test/         # ν…ŒμŠ€νŠΈ/개발용 컨트둀러
β”‚           └── util/         # 곡용 μœ ν‹Έλ¦¬ν‹° 
└── docker-compose.yml        # μ„œλΉ„μŠ€ 전체 ꡬ성


6.1 ERD

Image ---

7. Development Workflow (개발 μ›Œν¬ν”Œλ‘œμš°)

  • Git Flow μ „λž΅ 적용
  • main / dev / feature 브랜치 운영
  • PR 기반 μ½”λ“œλ¦¬λ·° & merge

8. Commit Convention (μ»€λ°‹μ»¨λ²€μ…˜)

μ»€λ°‹μ»¨λ°΄μ…˜ μ°Έκ³ λ¬Έμ„œ


9. Coding Convention (μ½”λ”©μ»¨λ²€μ…˜)

  • DDD 기반 νŒ¨ν‚€μ§€ ꡬ쑰
  • DTO / Controller / Service / Repository 넀이밍 톡일
  • λͺ…ν™•ν•œ 넀이밍 κ·œμΉ™ μ€€μˆ˜

10. Code Review

  • λͺ¨λ“  PR은 μ΅œμ†Œ 1λͺ… μ΄μƒμ˜ 리뷰 ν›„ merge
  • μ»¨λ²€μ…˜/κΈ°λŠ₯ 검증 ν•„μˆ˜

11. Deployment

  1. dev β†’ main merge
  2. CI/CD μžλ™ 배포
  3. 배포 ν›„ hotfix 브랜치둜 κΈ΄κΈ‰ μˆ˜μ •

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 79.7%
  • HTML 14.7%
  • Python 2.7%
  • JavaScript 2.7%
  • Dockerfile 0.2%