Skip to content

๐Ÿšช ๋ฐฉํƒˆ์ถœ์˜ ํ€„๋ฆฌํ‹ฐ๋ฅผ ํ•œ์ธต ๋†’์—ฌ์ค„ ํžŒํŠธํฐ ์•ฑ, ๋„ฅ์ŠคํŠธ๋ฃธ!

Notifications You must be signed in to change notification settings

Next-Room/NextRoom-be

Folders and files

NameName
Last commit message
Last commit date
Aug 8, 2024
Jul 16, 2023
Oct 15, 2023
May 18, 2024
Dec 29, 2024
Nov 5, 2023
Feb 28, 2024
Jul 16, 2023
Sep 21, 2024
Jul 16, 2023
Jul 11, 2023
Aug 10, 2023

Repository files navigation

๐Ÿšช ๋„ฅ์ŠคํŠธ๋ฃธ

Alt text

์†์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉํƒˆ์ถœ ํžŒํŠธํฐ ๋งค๋‹ˆ์ง• ์„œ๋น„์Šค, ๋„ฅ์ŠคํŠธ๋ฃธ์ž…๋‹ˆ๋‹ค!


๐Ÿ›  Core Stack

  • Language : Java 17
  • Framework : Spring Boot 3
  • DB : MySQL 8
  • ORM : Spring Data JPA
  • Infra : AWS, NCP

๐Ÿ—บ๏ธ Service Architecture

Alt text


๐Ÿ” Spring Security + JWT Authentication

Alt text


๐Ÿ‘จโ€๐Ÿ’ป Convention

Code

๊ฐ์ฒด์ง€ํ–ฅ ์ƒํ™œ ์ฒด์กฐ ์›์น™

  1. ํ•œ ๋ฉ”์„œ๋“œ์— ์˜ค์ง ํ•œ ๋‹จ๊ณ„์˜ ๋“ค์—ฌ์“ฐ๊ธฐ๋งŒ ํ•œ๋‹ค.
  2. else ํ‚ค์›Œ๋“œ๋ฅผ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
  3. ๋ชจ๋“  ์›์‹œ๊ฐ’๊ณผ ๋ฌธ์ž์—ด์„ ํฌ์žฅ(wrap)ํ•œ๋‹ค.
  4. ํ•œ ์ค„์— ์ ์„ ํ•˜๋‚˜๋งŒ ์ฐ๋Š”๋‹ค.
  5. ์ค„์—ฌ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
  6. ๋ชจ๋“  entity๋ฅผ ์ž‘๊ฒŒ ์œ ์ง€ํ•œ๋‹ค.
  7. 2๊ฐœ ์ด์ƒ์˜ ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜๋ฅผ ๊ฐ€์ง„ ํด๋ž˜์Šค๋ฅผ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.
  8. ์ผ๊ธ‰ ์ปฌ๋ ‰์…˜์„ ์“ด๋‹ค.
  9. getter/setter/property๋ฅผ ์“ฐ์ง€ ์•Š๋Š”๋‹ค.

์ฝ”๋“œ ์ปจ๋ฒค์…˜

๋„ค์ด๋ฒ„ ํ•ต๋ฐ์ด ์ž๋ฐ” ์ฝ”๋“œ ์ปจ๋ฒค์…˜

Issue & PR

Issue Template

### Issue ํƒ€์ž…

- [ ] ๊ธฐ๋Šฅ ์ถ”๊ฐ€
- [ ] ๊ธฐ๋Šฅ ์‚ญ์ œ
- [ ] ๋ฒ„๊ทธ ์ˆ˜์ •
- [x] ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง

### ์ด์Šˆ ์ƒ์„ธ ๋‚ด์šฉ

- ์ด์Šˆ ๋‚ด์šฉ ์š”์•ฝ ์„ค๋ช…

### ์ฒดํฌ๋ฆฌ์ŠคํŠธ

- [ ] TODO1
- [ ] TODO2

PR Template

### PR ํƒ€์ž…

- [ ] ๊ธฐ๋Šฅ ์ถ”๊ฐ€
- [ ] ๊ธฐ๋Šฅ ์‚ญ์ œ
- [ ] ๋ฒ„๊ทธ ์ˆ˜์ •
- [x] ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง

### ๋ฐ˜์˜ ๋ธŒ๋žœ์น˜

feature/19-> develop

### ์ž‘์—… ์‚ฌํ•ญ

- ๊ธฐ์กด username๋งŒ ๋”ฐ๋กœ ๊ฐ€์ ธ๊ฐ€๋˜ ํ˜•ํƒœ์—์„œ ๊ด€๊ณ„๋ฅผ ๋งคํ•‘ํ•˜์—ฌ User ๊ฐ์ฒด๋ฅผ ํ†ต์งธ๋กœ ์ฐธ์กฐํ•˜๋„๋ก ๋ณ€๊ฒฝ
- ๊ฒŒ์‹œ๊ธ€, ๋Œ“๊ธ€ ๋ชจ๋‘ ์ˆ˜์ •/์‚ญ์ œ ์‹œ username๊ณผ ์ผ์น˜ํ•˜๋Š”๊ฒŒ ์•„๋‹Œ userId์™€ ์ผ์น˜ํ•˜๋Š” ๊ฐ’์„ ์กฐํšŒ

### ์ฒดํฌ๋ฆฌ์ŠคํŠธ

- [x] ๋นŒ๋“œ์— ์„ฑ๊ณตํ–ˆ๋‚˜์š”?
- [x] ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์ž˜ ์ง€์ผฐ๋‚˜์š”? (`cmd` + `opt` + `L`)

### ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ

ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ ์ด์ƒ ์—†์Šต๋‹ˆ๋‹ค.
Git Commit

# commit ๋‚ด์—ญ ๋’ค์— ์ด์Šˆ๋ฒˆํ˜ธ๋ฅผ ์ ์–ด์ฃผ์„ธ์š”!

[FEAT] ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ปค๋ฐ‹ (#2)

[FEAT] ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[FIX] ๋ฒ„๊ทธ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[BUILD] ๋นŒ๋“œ ๊ด€๋ จ ํŒŒ์ผ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[CHORE] ๊ทธ ์™ธ ์ž์ž˜ํ•œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[CI] CI ๊ด€๋ จ ์„ค์ • ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[DOCS] ๋ฌธ์„œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[STYLE] ์ฝ”๋“œ ์Šคํƒ€์ผ ํ˜น์€ ํฌ๋งท ๋“ฑ์— ๊ด€ํ•œ ์ปค๋ฐ‹
[REFACTOR] ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง์— ๋Œ€ํ•œ ์ปค๋ฐ‹
[TEST] ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Branch Rule

Alt text


  • PR ๋‹จ์œ„๋Š” ๋ฆฌ๋ทฐ์–ด๊ฐ€ ๊ฐ๋‹นํ•  ์ˆ˜ ์žˆ์„๋งŒํผ ์ตœ๋Œ€ํ•œ ์ž‘๊ฒŒ ๊ฐ€์ ธ๊ฐ‘๋‹ˆ๋‹ค.
  • ํŒ€์› ๋ชจ๋‘๊ฐ€ ์Šน์ธํ•ด์•ผ๋งŒ Merge ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณธ์ธ PR์€ ๋ณธ์ธ์ด Merge ํ•ฉ๋‹ˆ๋‹ค.
Response

BaseResponse

public class BaseResponseDto<T> {
    private int code;
    private String message;
    private T data;
}
Application Architecture

๊ณ„์ธตํ˜• ๊ตฌ์กฐ

Alt text

About

๐Ÿšช ๋ฐฉํƒˆ์ถœ์˜ ํ€„๋ฆฌํ‹ฐ๋ฅผ ํ•œ์ธต ๋†’์—ฌ์ค„ ํžŒํŠธํฐ ์•ฑ, ๋„ฅ์ŠคํŠธ๋ฃธ!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages