From 0342e82347e756ed319ce62ac986d71ed5c67630 Mon Sep 17 00:00:00 2001
From: JI YOUNG <101448999+ziiyouth@users.noreply.github.com>
Date: Wed, 5 Jun 2024 23:17:17 +0900
Subject: [PATCH] Update README.md
---
README.md | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 138 insertions(+)
diff --git a/README.md b/README.md
index 85d06d2..0464c3b 100644
--- a/README.md
+++ b/README.md
@@ -8,3 +8,141 @@
+![표지](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/0a4549f3-d2a0-4cb4-b960-56830916e305)
+
+
+## ✍🏻 프로젝트 개요
+> 2023-2024 가천대학교 졸업작품 5조
+
+바쁜 삶에서 일기를 매일매일 기록하기란 쉽지 않습니다.
+
+이러한 어려움을 겪는 사람들을 위해, 하담은 간단한 키워드 입력으로 생성형 AI를 이용해 일기를 생성하고,
+
+생성형 이미지를 통해 시각적으로도 하루의 기록을 담아주는 서비스입니다.
+
+
+
+## ✨ 팀원 소개
+
+
+| [**박지영(ziiyouth)**](https://github.com/ziiyouth)|
+| :--------: |
+|
|
+| **🚀 Back-end Developer** |
+
+
+
+## 📔 핵심 기능
+
+### 소셜 로그인 기능
+> 카카오톡 소셜 로그인을 통해 간편한 회원가입이 가능합니다.
+
+![개발핵심기능 1](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/ad871630-13c7-4751-9b46-63890006fe96)
+
+### 일기 생성 기능
+> 날짜, 시간, 장소, 사람, 감정, 경험을 키워드 형식으로 간편하게 입력받아 gpt 모델을 이용한 일기를 생성합니다.
+
+![개발핵심기능 2-1](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/2f90f758-7b97-407c-bebb-fb0d5b6f6168)
+![개발핵심기능 2-2](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/beca8e11-ddde-41b7-ace0-baf976d9f6fb)
+
+
+### 일기에 어울리는 이미지 생성 기능
+> 작성된 일기에 어울리는 생성형 이미지를 볼 수 있습니다.
+
+![개발핵심기능 2-3](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/c9898e4b-1854-434e-816e-173f1dbedbd3)
+
+### 날짜별 조회 기능
+> 달 별 대표 일기를 메인 화면에서 슬라이드 형식으로, 일 별 일기를 원하는 정렬 순으로 검색하고 조회할 수 있습니다.
+
+![개발핵심기능 3](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/66321154-9e89-41bf-aed7-a8497d7cf8e9)
+
+
+### 일기 재발견 기능
+> 달력을 통해 N년 전 나의 하루를 돌아볼 수 있고, 현재 나의 감정을 통해 오늘과 비슷한 과거의 일기를 조회할 수 있습니다.
+
+![개발핵심기능 4-2](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/751a469b-2a7f-4491-ba50-8f08b7ac53ab)
+
+### 일기 좋아요 기능
+> 모아보고 싶은 일기에 좋아요를 눌러 별도로 보관할 수 있습니다.
+
+![개발핵심기능 4-1](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/9b76ee1e-caf0-46e9-833b-bdbee5d73cf2)
+
+### 마이페이지 기능
+> 자신의 정보를 설정할 수 있습니다.
+
+![개발핵심기능 5](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/e2a59349-1c7d-4b7c-b881-922bf5d53e0d)
+
+
+## 🍪 기술 스택
+### 🖥 Backend
+
+|역할|종류|
+|-|-|
+|Framework| |
+|Database||
+|Database Service||
+|Programming Language||
+|API|![REST](https://img.shields.io/badge/Rest-4B3263?style=for-the-badge&logo=rest&logoColor=white)
+|Version Control|![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge&logo=git&logoColor=white) ![GitHub](https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge&logo=github&logoColor=white) |
+|CICD| |
+
+
+
+### 🖥 Common
+|역할|종류|
+|-|-|
+|협업 관리| |
+|디자인||
+|소통|
+
+
+
+## 🦾 시스템 아키텍처
+
+### 📂 폴더 구조
+```
+📂 src
+┣ 📂 java.com.hadam.hadam
+┃ ┣ 📂 domain
+┃ ┃ ┣ 📂 sample
+┃ ┃ ┃ ┣ 📂 controller
+┃ ┃ ┃ ┣ 📂 domain
+┃ ┃ ┃ ┣ 📂 dto
+┃ ┃ ┃ ┃ ┣ 📂 request
+┃ ┃ ┃ ┃ ┣ 📂 response
+┃ ┃ ┃ ┣ 📂 service
+┃ ┃ ┃ ┣ 📂 repository
+┃ ┣ 📂 global
+┃ ┃ ┣ 📂 common
+┃ ┃ ┣ 📂 check
+┃ ┃ ┣ 📂 error
+┃ ┃ ┃ ┣ 📂 dto
+┃ ┃ ┃ ┣ 📂 exception
+┃ ┃ ┃ ┣ 📂 handler
+┃ ┃ ┣ 📂 external
+┣ 📂 resources
+┃ ┣ application.yml
+┣ HadamApplication.class
+```
+
+
+
+### 📂 아키텍처 구조
+![아키텍처](https://github.com/Ha-dam/hadam-backend-spring/assets/101448999/57feb74d-d64d-46f2-b52a-bb2a1c7fc8f9)
+
+- 안드로이드와 EC2 내에 올라간 서버가 Restful API를 통해 통신합니다.
+- 스프링과 fast api 서버가 같은 RDS에 접속하게 되며, mysql 기반의 DB를 사용합니다.
+- 일기 생성에 대한 request가 들어올때는 fast api 서버를 통해 모델이 작동하게 됩니다.
+- 일기의 글은 GPT를, 이미지는 Stable Diffusion을 통해 생성한 뒤 s3에 업로드하여 사용하게 됩니다.
+
+- 백엔드 서버는 자바17 기반의 스프링부트3을 이용해 개발했습니다.
+- 스프링 데이터 JPA를 사용해 객체-관계 매핑의 장점을 살리고 UI 디자인을 기반으로 한 ERD를 구상했습니다.
+- 이로 RESTful한 API를 개발하며 트랜잭션 관리로 DB 작업에 대한 일관성을 보장했습니다.
+- 깃허브 액션과 도커 컴포즈를 사용해 CICD를 구축하고 블루-그린 무중단 배포를 구현하였습니다.
+
+
+
+### 📢 실행 방법
+1. git clone을 진행한다.
+2. resources 폴더에 application.yml을 추가한다.
+3. build/libs 디렉터리로 이동해 java -jar hadam-0.0.1-SNAPSHOT.jar 명령어를 실행한다.