Skip to content

MOONSHOT-Team/MOONSHOT-SERVER

Repository files navigation

🌜 MOONSHOT 🌛

MOONSHOT
유난한 도전을 이어가는 당신을 위한 personal OKR, moonshot

🧑‍💻 MOONSHOT Server Developers

최영린 신민철
branch branch
0lynny its-sky
Entity 초기 세팅
ERD 및 DB 설계
Swagger 세팅
인증 / 인가 구현 (Redis)
AWS 서버 구축
CI/CD 구축
ERD 및 DB 설계
Presigned Url(S3) 이미지 서비스
Mybatis, Querydsl 동적 쿼리
Discord 알림

🌳 Git Flow 전략

branch branch

💬 Code Convention

Code Convention


🌳 Commit Convention

[prefix] #이슈번호 - 이슈 내용
[Feat]: 새로운 기능 구현
[Fix]: 버그, 오류 해결, 코드 수정
[Add]: Feat 이외의 부수적인 코드 추가
[Del]: 쓸모없는 코드, 주석 삭제
[Refactor]: 전면 수정이 있을 때 사용합니다
[Remove]: 파일 삭제
[Chore]: 그 이외의 잡일/ 버전 코드 수정, 패키지 구조 변경, 파일 이동, 파일이름 변경
[Docs]: README나 WIKI 등의 문서 개정
[Setting]: 프로젝트 관련 세팅

📁 Foldering

├─🗂️ moonshot-api
│  ├─🗂️ src
│  │  └─🗂️ main
│  │     └─🗂️ java
│  │        └─🗂️ org
│  │           └─🗂️ moonshot
│  │              ├─🗂️ objective
│  │              │  ├─🗂️ controller
│  │              │  ├─🗂️ dto
│  │              │  └─🗂️ service
│  │              ├─🗂️ keyresult
│  │              ├─🗂️ task
│  │              ├─🗂️ log
│  │              ├─🗂️ user
│  │              └─💽 MoonshotApplication.java
│  │     └─🗂️ resources
│  └─🗂️ build.gradle
├─🗂️ moonshot-auth
│  ├─🗂️ src
│  │  └─🗂️ main
│  │     └─🗂️ java
│  │        └─🗂️ org
│  │           └─🗂️ moonshot
│  │              ├─🗂️ config
│  │              ├─🗂️ filter
│  │              ├─🗂️ jwt
│  │              ├─🗂 redis
│  │              ├─🗂️ security
│  │              └─💽️ AuthRoot.java
│  └─🗂️ build.gradle
├─🗂️ moonshot-common
│  ├─🗂️ src
│  │  └─🗂️ main
│  │     └─🗂️ java
│  │        └─🗂️ org
│  │           └─🗂️ moonshot
│  │              ├─🗂️ config
│  │              ├─🗂️ constants
│  │              ├─🗂️ exception
│  │              ├─🗂️ filter
│  │              ├─🗂️ model
│  │              ├─🗂️ response
│  │              ├─🗂️ util
│  │              └─💽 CommonRoot.java
│  └─🗂️ build.gradle
├─🗂️ moonshot-domain
│  ├─🗂️ src
│  │  └─🗂️ main
│  │     └─🗂️ java
│  │        └─🗂️ org
│  │           └─🗂️ moonshot
│  │              ├─🗂️ config
│  │              ├─🗂️ common
│  │              ├─🗂️ objective
│  │              ├─🗂️ keyresult
│  │              ├─🗂️ task
│  │              ├─🗂️ log
│  │              ├─🗂️ badge
│  │              ├─🗂️ heart
│  │              ├─🗂️ user
│  │              └─💽 DomainRoot.java
│  └─🗂️ build.gradle
├─🗂️ moonshot-external
│  ├─🗂️ src
│  │  └─🗂️ main
│  │     └─🗂️ java
│  │        └─🗂️ org
│  │           └─🗂️ moonshot
│  │              ├─🗂️ config
│  │              ├─🗂️ discord
│  │              ├─🗂️ openfeign
│  │              ├─🗂️ s3
│  │              ├─🗂️ util
│  │              └─💽 ExternalRoot.java
└──└─🗂️ build.gradle

🔗 ERD

MOONSHOT_ERD

📄 API 명세서

MOONSHOT_ERD

🛠️ Tech Stack

사용기술 정보
Spring 3.2.1
Database AWS RDS(MySQL)
Instance AWS EC2(Ubuntu)
CI/CD Github Actions, Docker, Nginx
Build Tool Gradle
ERD DBDiagram, DataGrip
Java Java 17
Discord Appender 1.0.0
Swagger(Springdoc) 2.2.0
Redis 3.1.7
MyBatis 3.0.0
Querydsl 5.0.0

🔨 Architecture

Architecture