Skip to content

Commit f11b549

Browse files
committed
Merge branch 'develop' of https://github.com/prgrms-web-devcourse/Team_Ahpuh_Surf_BE into develop
2 parents 9e21550 + ed84b77 commit f11b549

File tree

4 files changed

+84
-48
lines changed

4 files changed

+84
-48
lines changed

README.md

Lines changed: 69 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
## **내 인생 성장곡선 사이트 - Surf 🏄🏻‍♂️**
1+
<img src="https://capsule-render.vercel.app/api?type=waving&color=0:5b8dd2,50:81b4ef,100:81b4cf&height=300&section=header&text=Surf.&fontColor=fff&fontSize=70&fontAlignY=40&desc=my%20own%20growth%20curve%20service&descAlignY=60" width="100%"/>
2+
3+
4+
5+
# **내 인생 성장곡선 사이트 - _**Surf.**_ 🏄🏻‍♂️**
26

37
인생은 surfing 을 타는 것처럼 즐겁지만, suffering 또한 피할 수 없다.
48

@@ -8,72 +12,104 @@
812

913
---
1014

11-
## 🧑🏽‍🤝‍🧑🏻팀원 소개
15+
## 👨‍💻팀원 소개
1216

1317
| [최승은](https://github.com/cse0518) | [박수빈](https://github.com/suebeen) | [박정미](https://github.com/Jummi10) | [전효희](https://github.com/kwhyo) |
1418
| :---: | :---: | :---: | :---: |
1519
| <img src="https://avatars.githubusercontent.com/u/60170616?v=4" width="150" height="150"> | <img src="https://user-images.githubusercontent.com/56287836/146503568-f24e194a-ff54-4340-89d5-66a042cd5d02.png" width="150" height="150"> | <img src="https://user-images.githubusercontent.com/56287836/146504190-28688cf8-0435-421f-808a-ff97f12c25a8.png" width="150" height="150"> | <img src="https://user-images.githubusercontent.com/60170616/146600241-4f634fce-7845-4a54-bd2f-7f6410fecffa.png" width="150" height="150"> |
16-
| 팀장, 개발자 | 개발자 | 개발자 | 개발자 |
20+
| 팀장, 개발자 | 스크럼 마스터, 개발자 | 개발자 | 개발자 |
21+
22+
<br>
1723

1824
## 📍프로젝트 목표 및 상세 설명
1925

20-
열심히 달려온 나 자신! 열심히는 하고 있는데 내가 얼마나 발전했는지 기록하는 공간은 없을까? 그냥 일기는 메모장에라도 적을 수 있고, 블로그는 이미 무수히 존재하고, 색다른 방법으로 동기부여 받고 기록하고 공유하는
26+
열심히 달려온 나 자신! 열심히는 하고 있는데 **내가 얼마나 발전했는지** 기록하는 공간은 없을까? 그냥 일기는 메모장에라도 적을 수 있고, 블로그는 이미 무수히 존재하고, **색다른 방법**으로 동기부여 받고 기록하고 공유하는
2127
그런 공간이 필요해! 🙆‍♀️
2228

23-
- 성장곡선으로 한눈에 내 인생을 돌아보기
24-
- 남들의 성장곡선을 보며 동기부여도 받기
29+
- **성장곡선**으로 한눈에 내 인생을 돌아보기
30+
- 남들의 성장곡선을 보며 **동기부여** 받기
2531
- 곡선의 특정 구간마다 기록도 남기기
2632
- 곡선이 아닌 기록들만 모아서 보기
27-
- 필요하다면 포트폴리오로도 사용 가능하기
33+
- 필요하다면 **포트폴리오**로도 사용 가능하기
34+
35+
<br>
2836

2937
## 🛠️개발 언어 및 활용 기술
3038

3139
**개발 환경**
3240

33-
- IDE : **IntelliJ**
34-
- 개발 언어 : **Java 17**
35-
- 프레임워크 : **SpringBoot 2.6.1**
36-
- 영속성 프레임워크 : **JPA**
37-
- 빌드도구 : **Gradle**
38-
- 데이터베이스 : **MySQL**
39-
- 스토리지 : **S3**
41+
- **Springboot** 로 웹 어플리케이션 서버를 구축했어요.
42+
- 빌드도구는 **Gradle**을 사용했어요.
43+
- 다양한 기능과 안정성을 위해 LTS 버전인 **Java 17** 버전을 사용했어요.
44+
- **Spring Data JPA(Hibernate)** 로 객체 지향 데이터 로직을 작성했어요.
45+
- **QueryDSL** 로 컴파일 시점에 SQL 오류를 감지해요. JPA 인터페이스로 해결하기 힘든 동적이고 복잡한 query를 보완하고 더 가독성 높은 코드를 작성할 수 있어요.
46+
- 데이터베이스는 **MySQL**을 사용했어요.
47+
48+
**Infrastructure**
49+
50+
- **AWS EC2**를 사용해 서버를 구축했어요.
51+
- **S3** 로 파일을 업로드하고 보관해요.
4052

4153
**협업 관리**
4254

43-
- API 문서화 : **Postman**
44-
- 이슈 관리 : **Github Issue**
45-
- 커뮤니케이션 : **Slack / Gather / Notion**
46-
- **Git / Github**
55+
- **Github Issue** 으로 이슈를 관리해요.
56+
- **Git-flow 전략**을 사용하여 브랜치를 관리해요.
57+
- **Slack / Gather / Notion** 으로 소통해요.
58+
- **Postman** 으로 작성한 API 문서를 통해 클라이언트와 소통해요.
4759

4860
**CI/CD**
4961

50-
- Github action
51-
- Jenkins
62+
- **Github Actions** 로 코드 퀄리티와 테스트를 검사해요.
63+
- **Jenkins** 로 백엔드 코드의 지속적인 배포를 진행해요.
64+
- **Codacy** 로 지속적인 코드 퀄리티 개선을 진행해요.
65+
- **JACOCO** 로 테스트 커버리지를 검사해요.
5266

53-
**Dependencies**
67+
**Security**
5468

55-
- Spring Web
56-
- Spring Data JPA
57-
- H2 Database
58-
- Spring REST Docs
59-
- Lombok
69+
- **Spring Security** 를 사용했어요.
70+
- 로그인 시에는 **JWT** 토큰을 발행하여 서버의 별도 저장소 없이 로그인을 유지할 수 있어요.
71+
- CertBot 으로 Let’s Encrypt **SSL** 인증서를 발급받았어요.
72+
- **Nginx** 가 프록시로 8080 포트를 바라보게 설정했어요.
6073

61-
## 🏗️설계
74+
<br>
75+
76+
## ⚙시스템 아키텍처
77+
![최종](https://user-images.githubusercontent.com/55528172/147193318-77fd4086-33a1-4e71-aa46-2f36a474eff1.png)
6278

63-
[MoSCoW 링크](https://www.notion.so/MoSCoW-4f7d9e241bc24e84ac7c8213ef1d2c85)
79+
<br>
6480

81+
## 🏗️설계
6582
### ERD 설계
83+
![Untitled](https://user-images.githubusercontent.com/55528172/147193431-1410ff56-67b9-4eee-ba16-1b0a3a60c447.png)
84+
85+
86+
### 설계 문서
87+
[🐄MoSCoW 구경가기](https://www.notion.so/MoSCoW-4f7d9e241bc24e84ac7c8213ef1d2c85)<br>
88+
[🔍SURF API 설계 구경가기](https://www.notion.so/6785f7446eba4a0b82d384d025cb28a6)<br>
89+
[📑Postman API 명세서](https://documenter.getpostman.com/view/15409285/UVRAJnUD#50ff4a3f-1d02-4f50-9870-9c0b22fa2a6f)<br>
90+
91+
<br>
92+
93+
## 🤳데모 화면
94+
| **로그인** | **메인 화면** - Surf 첫 페이지 | **메인 화면** - 특정 category 선택 |
95+
| :---: | :---: | :---: |
96+
| ![로그인](https://user-images.githubusercontent.com/55528172/147193938-07d0547f-740b-428c-8ea6-25c8a6e85f3f.gif) | ![메인 페이지 - 첫 화면](https://user-images.githubusercontent.com/55528172/147193958-a062bdb3-a82a-41a2-8d2c-dd4ecd9882ba.gif) | ![메인 페이지 - 카테고리 선택](https://user-images.githubusercontent.com/55528172/147193999-6313d4d4-fe2b-4842-9b07-f3fa86835d56.gif) |
6697

67-
![erd](https://user-images.githubusercontent.com/56287836/146503313-64862768-a1e1-4a94-8645-f5b423a41ddd.png)
98+
| **게시글 작성** | **무한 스크롤** | **마이 페이지** - 내 정보 수정 |
99+
| :---: | :---: | :---: |
100+
| ![포스트 생성](https://user-images.githubusercontent.com/55528172/147194169-b8d17790-bb44-4275-87d1-77156fa48667.gif) | ![무한 스크롤](https://user-images.githubusercontent.com/55528172/147194204-14e4475b-dc85-41b4-8995-8d91b7fe286a.gif) | ![마이 페이지 - 정보 수정](https://user-images.githubusercontent.com/55528172/147194226-f3ae8cf6-1894-4420-88a1-e340d426fd25.gif) |
68101

69-
## 🛠️ API 설계
102+
| **대시보드** | **카드 페이지** | **카드 페이지** - 해당 월별 기록 리스트 |
103+
| :---: | :---: | :---: |
104+
| ![대시보드](https://user-images.githubusercontent.com/55528172/147194386-80912927-d4a4-4901-aea2-e241f62c775f.gif) | ![카드 페이지](https://user-images.githubusercontent.com/55528172/147194395-060842b6-9ad4-4ef5-a5ba-7d3904906833.gif) | ![카드 페이지 - 월별 리스트](https://user-images.githubusercontent.com/55528172/147194403-0f9236bb-3ce1-445d-aca1-775cb26d8737.gif) |
105+
| 마이 페이지에서 이동 | 연도별 필터링, 해당 달의 작성 일수 확인 가능 | 카드 선택시 |
70106

71-
[🔍SURF API 설계 구경가기](https://www.notion.so/6785f7446eba4a0b82d384d025cb28a6)
107+
___
72108

73109
## 🌻프론트 깃 레포
74110

75-
[👨‍💻SURF Front Git Repo](https://github.com/prgrms-web-devcourse/Team_Ahpuh_Surf_FE)
111+
[👨‍💻**SURF** Front Git Repository](https://github.com/prgrms-web-devcourse/Team_Ahpuh_Surf_FE)
76112

77113
## 🍁팀 노션
78114

79-
[🔍SURF 팀 노션 구경가기](https://www.notion.so/8-Ah-puh-Surf-ccc0a5922b8e4f638d6e897b4eb575a6)
115+
[🔍**SURF** 팀 노션 구경가기](https://www.notion.so/8-Ah-puh-Surf-ccc0a5922b8e4f638d6e897b4eb575a6)

src/main/java/org/ahpuh/surf/config/WebMvcConfig.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,20 @@ public void extendMessageConverters(final List<HttpMessageConverter<?>> converte
3232
@Override
3333
public void addCorsMappings(final CorsRegistry registry) {
3434
registry
35-
.addMapping("/api/**")
36-
.allowedOrigins("http://localhost:3000")
35+
.addMapping("/**")
36+
.allowedOrigins(
37+
"https://surf-livid.vercel.app",
38+
"http://localhost:3000")
39+
.allowedHeaders("*")
3740
.allowCredentials(true)
3841
.maxAge(3600)
3942
.allowedMethods(
4043
HttpMethod.POST.name(),
4144
HttpMethod.GET.name(),
4245
HttpMethod.DELETE.name(),
4346
HttpMethod.PATCH.name(),
44-
HttpMethod.PUT.name());
47+
HttpMethod.PUT.name(),
48+
HttpMethod.OPTIONS.name());
4549
}
4650

4751
}

src/main/java/org/ahpuh/surf/user/service/UserServiceImpl.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,10 @@
2626
public class UserServiceImpl implements UserService {
2727

2828
private final AuthenticationManager authenticationManager;
29-
3029
private final PasswordEncoder passwordEncoder;
3130

3231
private final UserRepository userRepository;
3332
private final FollowRepository followRepository;
34-
3533
private final UserConverter userConverter;
3634

3735
public UserLoginResponseDto authenticate(final String email, final String password) {

src/main/resources/sql/schema.sql

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,14 @@ CREATE TABLE users
2222

2323
CREATE TABLE categories
2424
(
25-
category_id BIGINT AUTO_INCREMENT PRIMARY KEY,
26-
user_id BIGINT NOT NULL,
27-
name VARCHAR(30) NOT NULL,
28-
is_public BOOLEAN DEFAULT true,
29-
average_score INT DEFAULT 0,
30-
color_code VARCHAR(10),
31-
recent_score INT DEFAULT 0,
32-
created_at TIMESTAMP DEFAULT current_timestamp,
33-
updated_at TIMESTAMP DEFAULT current_timestamp,
34-
is_deleted BOOLEAN DEFAULT false,
25+
category_id BIGINT AUTO_INCREMENT PRIMARY KEY,
26+
user_id BIGINT NOT NULL,
27+
name VARCHAR(30) NOT NULL,
28+
is_public BOOLEAN DEFAULT true,
29+
color_code VARCHAR(10),
30+
created_at TIMESTAMP DEFAULT current_timestamp,
31+
updated_at TIMESTAMP DEFAULT current_timestamp,
32+
is_deleted BOOLEAN DEFAULT false,
3533
CONSTRAINT fk_user_id_for_category FOREIGN KEY (user_id) REFERENCES users (user_id) ON DELETE RESTRICT ON UPDATE RESTRICT
3634
);
3735

0 commit comments

Comments
 (0)