Skip to content

Latest commit

Β 

History

History
118 lines (84 loc) Β· 3.58 KB

README.md

File metadata and controls

118 lines (84 loc) Β· 3.58 KB

D.COM Intranet Server

D.COM μΈνŠΈλΌλ„· 리뉴얼 ν”„λ‘œμ νŠΈμ˜ Spring Boot λ°±μ—”λ“œ λ ˆν¬μ§€ν† λ¦¬μž…λ‹ˆλ‹€.

Project Overview

D.COM μΈνŠΈλΌλ„· 리뉴얼 ν”„λ‘œμ νŠΈμ˜ μ„œλ²„ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μž…λ‹ˆλ‹€.

νšŒμ›κ°€μž…, 이메일 인증, κ΄€λ¦¬μž 승인, 둜그인/JWT 인증, 쑱보 μ•„μΉ΄μ΄λΈŒ, 정보 곡유 κ²Œμ‹œνŒ, 곡지사항, ν™œλ™ 사진 앨범, λ§ˆμ΄νŽ˜μ΄μ§€, κ΄€λ¦¬μž μ½˜μ†” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

Tech Stack

  • Spring Boot
  • MySQL
  • JWT Authentication
  • Local File Storage
  • iwinv Cloud Server

Related Repository

  • Web: Dcom-KHU/intranet-web

Branch Convention

  • main: μ•ˆμ • 버전
  • develop: feature 톡합 및 개발
  • feature/*: κΈ°λŠ₯ 개발

Branch Name

Merge ν˜„ν™©

  • [x]feature/auth
  • [ ]feature/admin
  • [x]feature/home
  • [ ]feature/database
  • [ ]feature/mypage
  • [x]feature/archive
  • [x]feature/info-board
  • [x]feature/announcement
  • [ ]feature/photo-album

Database Branch

  • feature/database: DB μŠ€ν‚€λ§ˆ, μ—”ν‹°ν‹° λ§€ν•‘, JPA μ„€μ •, 초기 데이터, MariaDB 둜컬 μ‹€ν–‰ 섀정을 μž‘μ—…ν•©λ‹ˆλ‹€.
  • κΈ°λ³Έ 개발 ν™˜κ²½μ€ H2 λ©”λͺ¨λ¦¬ DBλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.
  • MySQL μ—°κ²° μ •λ³΄λŠ” 둜컬 λ˜λŠ” 운영 ν™˜κ²½ μ„€μ • νŒŒμΌμ—μ„œλ§Œ κ΄€λ¦¬ν•˜λ©° Git에 μ»€λ°‹ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  • ν…Œμ΄λΈ”, 컬럼, 인덱슀, μ œμ•½μ‘°κ±΄ λ³€κ²½ μ‹œ κ΄€λ ¨ 엔티티와 Repository 영ν–₯ λ²”μœ„λ₯Ό ν•¨κ»˜ ν™•μΈν•©λ‹ˆλ‹€.
  • DB ꡬ쑰 변경이 API μ‘λ‹΅μ΄λ‚˜ ν”„λ‘ νŠΈ 연동에 영ν–₯을 μ£ΌλŠ” 경우 Pull Request에 λ³€κ²½ λ‚΄μš©μ„ λͺ…μ‹œν•©λ‹ˆλ‹€.

Development Rule

  1. main λΈŒλžœμΉ˜μ— 직접 pushν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  2. λͺ¨λ“  μž‘μ—…μ€ Issue λ‹¨μœ„λ‘œ μ§„ν–‰ν•©λ‹ˆλ‹€.
  3. μž‘μ—… μ‹œμž‘ μ „ GitHub Projectsμ—μ„œ Issue μƒνƒœλ₯Ό In Progress둜 λ³€κ²½ν•©λ‹ˆλ‹€.
  4. κΈ°λŠ₯별 브랜치λ₯Ό μƒμ„±ν•˜μ—¬ μž‘μ—…ν•©λ‹ˆλ‹€.
  5. μž‘μ—… μ™„λ£Œ ν›„ Pull Requestλ₯Ό μƒμ„±ν•©λ‹ˆλ‹€.
  6. Pull Requestμ—λŠ” κ΄€λ ¨ Issue 번호λ₯Ό μ—°κ²°ν•©λ‹ˆλ‹€.
  7. 확인 ν›„ develop λΈŒλžœμΉ˜μ— mergeν•©λ‹ˆλ‹€.

Commit Message Convention

  • feat: μƒˆλ‘œμš΄ κΈ°λŠ₯ μΆ”κ°€
  • fix: 버그 μˆ˜μ •
  • docs: λ¬Έμ„œ μˆ˜μ •
  • style: μ½”λ“œ ν¬λ§·νŒ…, μŠ€νƒ€μΌ μˆ˜μ •
  • refactor: μ½”λ“œ λ¦¬νŒ©ν† λ§
  • chore: μ„€μ •, λΉŒλ“œ, νŒ¨ν‚€μ§€ λ“± 기타 μž‘μ—…

Security Rule

μ•„λž˜ 파일과 μ •λ³΄λŠ” Git에 μ»€λ°‹ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

  • .env
  • application-local.yml
  • application-local.properties
  • DB 계정 정보
  • JWT Secret
  • 이메일 인증 κ΄€λ ¨ Secret
  • μ„œλ²„ 접속 정보
  • 운영 ν™˜κ²½ μ„€μ • 파일

File Storage Policy

MVP λ‹¨κ³„μ—μ„œλŠ” Cloudflare R2λ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šκ³ , iwinv ν΄λΌμš°λ“œ μ„œλ²„μ˜ 둜컬 λ””μŠ€ν¬μ— νŒŒμΌμ„ μ €μž₯ν•©λ‹ˆλ‹€.

μ—…λ‘œλ“œ νŒŒμΌμ€ μ„œλ²„ λ‚΄λΆ€μ˜ μ§€μ •λœ μ—…λ‘œλ“œ 디렉토리에 μ €μž₯ν•˜λ©°, DBμ—λŠ” 파일 μžμ²΄κ°€ μ•„λ‹ˆλΌ 파일 κ²½λ‘œμ™€ 메타데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.

μ €μž₯ν•  파일 메타데이터 μ˜ˆμ‹œλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

  • original_file_name
  • stored_file_name
  • file_path
  • content_type
  • file_size
  • uploaded_by
  • created_at

Issue & Project Management

ν”„λ‘œμ νŠΈ κ΄€λ¦¬λŠ” GitHub Projects의 D.COM Intranet MVP λ³΄λ“œμ—μ„œ μ§„ν–‰ν•©λ‹ˆλ‹€.

StatusλŠ” λ‹€μŒ κΈ°μ€€μœΌλ‘œ κ΄€λ¦¬ν•©λ‹ˆλ‹€.

  • Backlog: ν•΄μ•Ό ν•  일 후보
  • Ready: μž‘μ—… μ˜ˆμ •
  • In Progress: μž‘μ—… 쀑
  • Review: PR 리뷰 λ˜λŠ” 확인 쀑
  • Done: μ™„λ£Œ

Notes

  • 둜그인 ID와 ν•™λ²ˆμ€ 별도 ν•„λ“œλ‘œ κ΄€λ¦¬ν•©λ‹ˆλ‹€.
  • ν•™λ²ˆμ€ 전체 ν•™λ²ˆ ν˜•μ‹μœΌλ‘œ μ €μž₯ν•©λ‹ˆλ‹€.
  • νšŒμ›κ°€μž… 직후 μƒνƒœλŠ” EMAIL_UNVERIFIEDμž…λ‹ˆλ‹€.
  • 이메일 인증 μ™„λ£Œ ν›„ μƒνƒœλŠ” PENDINGμž…λ‹ˆλ‹€.
  • κ΄€λ¦¬μž 승인 ν›„ μƒνƒœλŠ” APPROVEDμž…λ‹ˆλ‹€.