Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
d6249d7
docs: 이미지 관리 시스템 상세 기술 문서 추가
AlbertImKr Nov 30, 2025
dbeda2a
docs(image): Mermaid 시퀀스 다이어그램으로 이미지 업로드 플로우 시각화 개선
AlbertImKr Nov 30, 2025
e8a8b25
feat(ui): HTMX 기반 동적 프로필 프래그먼트로 홈페이지 성능 최적화
AlbertImKr Nov 30, 2025
4504560
refactor(ui): 홈페이지 로딩 성능 최적화 및 프래그먼트 구조 개선
AlbertImKr Nov 30, 2025
10082ad
feat(post): 내 게시글 관리 페이지 및 동적 프래그먼트 시스템 구현
AlbertImKr Nov 30, 2025
ef41bab
refactor(post): 단일 책임 원칙 기반 뷰 컨트롤러 분리 및 폼 구조 개선
AlbertImKr Nov 30, 2025
e3957e7
refactor(friend): 친구 요청 API 단순화 및 동적 버튼 프래그먼트 개선
AlbertImKr Nov 30, 2025
80c187b
refactor(follow): 팔로우 기능 프래그먼트 기반 아키텍처로 개선
AlbertImKr Nov 30, 2025
5e68653
refactor(member): 멤버 도메인에 postCount 필드 추가 및 프로필 조회 최적화
AlbertImKr Nov 30, 2025
d4d9a99
feat(member): 추천 회원 조회 시 팔로잉 상태 함께 반환 기능 구현
AlbertImKr Nov 30, 2025
6b8b409
refactor(member): 단일 책임 원칙 기반 MemberView 컨트롔러 분리 및 패키지 구조 개선
AlbertImKr Dec 1, 2025
fbdbeda
refactor(member): 회원 정보 수정 기능 아키텍처 개선 및 보안 강화
AlbertImKr Dec 2, 2025
a88ea6d
refactor(image): 이미지 관리 API 개선 및 프로필 템플릿 최적화
AlbertImKr Dec 3, 2025
1365fcb
refactor(member): 프로필 이미지 처리 방식 개선 및 MemberPrincipal 구조 최적화
AlbertImKr Dec 3, 2025
0bfe9a4
refactor(friend): 친구 요청 Command 구조 개선 및 양방향 닉네임 저장 기능 구현
AlbertImKr Dec 3, 2025
d384561
refactor(member): 회원 상태 관리 및 친구/팔로우 기능 아키텍처 전면 개선
AlbertImKr Dec 3, 2025
02f3214
refactor(follow): 팔로우 기능 아키텍처 재구성 및 프래그먼트 기반 UI 개선
AlbertImKr Dec 4, 2025
a5395e2
refactor(collection): 컬렉션 뷰 모델 속성 단순화 및 권한 체크 로직 개선
AlbertImKr Dec 4, 2025
25fbe23
feat(collection): 컬렉션 상세 조회 API 개선 및 응답 DTO 도입
AlbertImKr Dec 4, 2025
1df47ec
docs: 프로젝트 문서 전면 개선 및 이미지 관리 시스템 문서화
AlbertImKr Dec 4, 2025
2d2fe6e
docs: feature36 리팩토링 문서화 및 프로젝트 문서 전면 개선
AlbertImKr Dec 4, 2025
3db5e04
feat(schema): 데이터베이스 스키마 마이그레이션 추가
AlbertImKr Dec 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 89 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,97 @@

## ✨ 주요 기능

🎯 **내돈내산 인증** | 👥 **소셜 네트워킹** | 📍 **위치 기반 검색** | 🏆 **신뢰도 시스템**
### 🎯 내돈내산 리뷰 시스템

- 게시글 CRUD (생성, 조회, 수정, 삭제)
- 맛집 정보 및 평점 (1-5점)
- 이미지 업로드 (최대 5장, AWS S3 Presigned URL)
- 좋아요 및 조회수 관리
- 댓글 및 대댓글 (계층적 구조)

### 👥 소셜 네트워킹

- 친구 시스템 (요청, 수락, 거절, 해제)
- 팔로우/언팔로우 (단방향 관계)
- 컬렉션 (게시글 모음, 공개/비공개 설정)
- 프로필 페이지 (권한별 UI 분리)
- 추천 사용자 (무작위 선택 기반)

### 🏆 신뢰도 시스템

- 내돈내산 리뷰: +5점
- 광고성 리뷰: +1점
- 위반 페널티: -20점
- 신뢰도 레벨: BRONZE/SILVER/GOLD/PLATINUM (0-1000점)

### 🔐 회원 관리

- 이메일 기반 회원가입 및 인증
- 비밀번호 재설정 (이메일 토큰)
- 프로필 수정 (닉네임, 소개, 프로필 주소)
- 회원 상태 관리 (PENDING → ACTIVE → DEACTIVATED)

## 🛠 기술 스택

**Backend**: Kotlin, Spring Boot, JPA, MySQL
**Testing**: JUnit5, MockK, Testcontainers
**DevOps**: Docker, GitHub Actions, SonarCloud
**Backend**

- `Kotlin 2.1.21` `Spring Boot 3.x` `Spring Security` `JPA` `QueryDSL`

**Database & Migration**

- `MySQL 8.0` `Flyway` (데이터베이스 버전 관리)

**Cloud & Infrastructure**

- `AWS S3` (이미지 스토리지, Presigned URL)
- `AWS ECS` (컨테이너 오케스트레이션)
- `AWS ECR` (컨테이너 레지스트리)
- `AWS RDS` (MySQL Multi-AZ)
- `AWS ALB` (Application Load Balancer)
- `AWS Route 53` (DNS 관리)

**DevOps & CI/CD**

- `Docker` (Multi-stage 빌드)
- `GitHub Actions` (완전 자동화 파이프라인)
- `SonarCloud` (코드 품질 분석, 커버리지 80%+)

**Testing**

- `JUnit5` `MockK` (단위 테스트)
- `Testcontainers` (통합 테스트, 실제 DB 환경)
- `LocalStack` (AWS S3 로컬 테스트)

**Architecture**

- `Hexagonal Architecture` (Ports & Adapters)
- `DDD` (Domain-Driven Design)
- `Clean Architecture` (의존성 역전)

**Frontend**

- `HTMX` (동적 SPA-like 경험)
- `Thymeleaf` (서버 사이드 렌더링)
- `Bootstrap 5`

## 🌐 배포

- **프로덕션**: https://rmrt.albert-im.com/
- **인프라**: AWS 기반 컨테이너 오케스트레이션 (ECS, RDS, ALB)
- **CI/CD**: GitHub Actions 기반 자동화 파이프라인

### 📈 성과 지표

| 항목 | 성과 |
|---------------|-----------------------------|
| **배포 자동화** | 배포 시간 83% 단축 (30분 → 5분) |
| **코드 품질** | SonarCloud 커버리지 80%+ 유지 |
| **테스트 코드** | 약 15,000줄 (단위/통합/API 테스트) |
| **아키텍처** | 헥사고날 아키텍처 + DDD 완벽 적용 |
| **이미지 시스템** | S3 Presigned URL로 서버 부하 최소화 |
| **DB 마이그레이션** | Flyway 기반 자동 스키마 버전 관리 |
| **문서화** | 2,800줄+ 기술 문서 |

### ☁️ 클라우드 아키텍처

```
Expand Down Expand Up @@ -64,12 +141,14 @@
│ ECS Task │
│ (rmrt-task) │
└─────────────────┘
┌─────────────────┐
│ CloudWatch │
│ (Monitoring) │
└─────────────────┘
┌────────┴────────┐
▼ ▼
┌─────────────┐ ┌─────────────────┐
│ Amazon S3 │ │ CloudWatch │
│ (Image │ │ (Monitoring) │
│ Storage) │ └─────────────────┘
└─────────────┘
```

### 📊 데이터베이스 구조
Expand All @@ -83,6 +162,7 @@
- [🏛 아키텍처](docs/ARCHITECTURE.md)
- [🚀 빠른 시작](docs/QUICK_START.md)
- [📖 API 문서](docs/API_DOCUMENTATION.md)
- [📷 이미지 관리 시스템](docs/IMAGE_MANAGEMENT.md)
- [🧪 테스트 가이드](docs/TESTING_GUIDE.md)
- [✅ TODO 리스트](docs/TODO.md)

Expand Down
Loading