Skip to content

EatCook/EatCook-Server

Repository files navigation

🍕잇쿡 - 자신만의 요리법을 공유하는 서비스

잇쿡은 매번 식사시간마다 무엇을 먹을지 고민하거나, 자신만의 요리를 자랑하고 공유하고 싶은 유저들을 위해 도와주는 서비스 입니다.





📚 사용 스택


Spring Boot AWS EC2 S3 RDS ElastiCache        Nginx GitHub Actions Prometheus Grafana




📁 Project Structure


DDD와 멀티모듈 구조를 사용했습니다. 각 도메인별 연관관계를 최대한 끊어내고 도메인 이벤트를 활용해 도메인간의 의존성을 줄였습니다. 도메인 모듈 -> 인프라 모듈의 의존성을 끊어내기 위해 DIP를 적용하여 의존성을 관리했습니다.

├── ItCook-Api
│   └── com.eatcook.api
│       └── <각 usecase 별 패키지>  # 예: recipe, user
│           ├── controller
│           ├── dto
│           └── service  # usecase 파사드 형태로 다른 도메인 서비스들의 반환값을 모아 응답값 생성
├── ItCook-Batch  # 배치 서비스 애플리케이션 (예: 스케줄링 작업)
├── ItCook-Domain
│   └── com.eatcook.domain
│       ├── common  # 공통 기능 (예: AOP, 도메인 이벤트 발행)
│       ├── configs  # 도메인 설정 
│       └── domains
│           └── <도메인>  # 예: recipe, user
│               ├── adaptor  # 도메인 리포지토리를 한 번 더 감싼 컴포넌트
│               ├── domain  # 도메인 객체
│               ├── exception  # 도메인별 에러 정의
│               ├── repository  # 도메인 리포지토리
│               └── service  # 도메인 서비스, 도메인 이벤트 핸들러
└── ItCook-infra  # Redis, FeignClient(외부 API 호출), 메일(AWS SES), S3 등

image

📁 Project Structure - visual selection





💻 Developers


Lead-Backend Backend
조항진 서찬원
https://github.com/hangs0908 https://github.com/Chanwon-Seo

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •