|
1 | | -## **๋ด ์ธ์ ์ฑ์ฅ๊ณก์ ์ฌ์ดํธ - Surf ๐๐ปโโ๏ธ** |
| 1 | +<img src="https://capsule-render.vercel.app/api?type=waving&color=0:5b8dd2,50:81b4ef,100:81b4cf&height=300§ion=header&text=Surf.&fontColor=fff&fontSize=70&fontAlignY=40&desc=my%20own%20growth%20curve%20service&descAlignY=60" width="100%"/> |
| 2 | + |
| 3 | + |
| 4 | + |
| 5 | +# **๋ด ์ธ์ ์ฑ์ฅ๊ณก์ ์ฌ์ดํธ - _**Surf.**_ ๐๐ปโโ๏ธ** |
2 | 6 |
|
3 | 7 | ์ธ์์ surfing ์ ํ๋ ๊ฒ์ฒ๋ผ ์ฆ๊ฒ์ง๋ง, suffering ๋ํ ํผํ ์ ์๋ค. |
4 | 8 |
|
|
8 | 12 |
|
9 | 13 | --- |
10 | 14 |
|
11 | | -## ๐ง๐ฝโ๐คโ๐ง๐ปํ์ ์๊ฐ |
| 15 | +## ๐จโ๐ปํ์ ์๊ฐ |
12 | 16 |
|
13 | 17 | | [์ต์น์](https://github.com/cse0518) | [๋ฐ์๋น](https://github.com/suebeen) | [๋ฐ์ ๋ฏธ](https://github.com/Jummi10) | [์ ํจํฌ](https://github.com/kwhyo) | |
14 | 18 | | :---: | :---: | :---: | :---: | |
15 | 19 | | <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> |
17 | 23 |
|
18 | 24 | ## ๐ํ๋ก์ ํธ ๋ชฉํ ๋ฐ ์์ธ ์ค๋ช
|
19 | 25 |
|
20 | | -์ด์ฌํ ๋ฌ๋ ค์จ ๋ ์์ ! ์ด์ฌํ๋ ํ๊ณ ์๋๋ฐ ๋ด๊ฐ ์ผ๋ง๋ ๋ฐ์ ํ๋์ง ๊ธฐ๋กํ๋ ๊ณต๊ฐ์ ์์๊น? ๊ทธ๋ฅ ์ผ๊ธฐ๋ ๋ฉ๋ชจ์ฅ์๋ผ๋ ์ ์ ์ ์๊ณ , ๋ธ๋ก๊ทธ๋ ์ด๋ฏธ ๋ฌด์ํ ์กด์ฌํ๊ณ , ์๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋๊ธฐ๋ถ์ฌ ๋ฐ๊ณ ๊ธฐ๋กํ๊ณ ๊ณต์ ํ๋ |
| 26 | +์ด์ฌํ ๋ฌ๋ ค์จ ๋ ์์ ! ์ด์ฌํ๋ ํ๊ณ ์๋๋ฐ **๋ด๊ฐ ์ผ๋ง๋ ๋ฐ์ ํ๋์ง** ๊ธฐ๋กํ๋ ๊ณต๊ฐ์ ์์๊น? ๊ทธ๋ฅ ์ผ๊ธฐ๋ ๋ฉ๋ชจ์ฅ์๋ผ๋ ์ ์ ์ ์๊ณ , ๋ธ๋ก๊ทธ๋ ์ด๋ฏธ ๋ฌด์ํ ์กด์ฌํ๊ณ , **์๋ค๋ฅธ ๋ฐฉ๋ฒ**์ผ๋ก ๋๊ธฐ๋ถ์ฌ ๋ฐ๊ณ ๊ธฐ๋กํ๊ณ ๊ณต์ ํ๋ |
21 | 27 | ๊ทธ๋ฐ ๊ณต๊ฐ์ด ํ์ํด! ๐โโ๏ธ |
22 | 28 |
|
23 | | -- ์ฑ์ฅ๊ณก์ ์ผ๋ก ํ๋์ ๋ด ์ธ์์ ๋์๋ณด๊ธฐ |
24 | | -- ๋จ๋ค์ ์ฑ์ฅ๊ณก์ ์ ๋ณด๋ฉฐ ๋๊ธฐ๋ถ์ฌ๋ ๋ฐ๊ธฐ |
| 29 | +- **์ฑ์ฅ๊ณก์ **์ผ๋ก ํ๋์ ๋ด ์ธ์์ ๋์๋ณด๊ธฐ |
| 30 | +- ๋จ๋ค์ ์ฑ์ฅ๊ณก์ ์ ๋ณด๋ฉฐ **๋๊ธฐ๋ถ์ฌ**๋ ๋ฐ๊ธฐ |
25 | 31 | - ๊ณก์ ์ ํน์ ๊ตฌ๊ฐ๋ง๋ค ๊ธฐ๋ก๋ ๋จ๊ธฐ๊ธฐ |
26 | 32 | - ๊ณก์ ์ด ์๋ ๊ธฐ๋ก๋ค๋ง ๋ชจ์์ ๋ณด๊ธฐ |
27 | | -- ํ์ํ๋ค๋ฉด ํฌํธํด๋ฆฌ์ค๋ก๋ ์ฌ์ฉ ๊ฐ๋ฅํ๊ธฐ |
| 33 | +- ํ์ํ๋ค๋ฉด **ํฌํธํด๋ฆฌ์ค**๋ก๋ ์ฌ์ฉ ๊ฐ๋ฅํ๊ธฐ |
| 34 | + |
| 35 | +<br> |
28 | 36 |
|
29 | 37 | ## ๐ ๏ธ๊ฐ๋ฐ ์ธ์ด ๋ฐ ํ์ฉ ๊ธฐ์ |
30 | 38 |
|
31 | 39 | **๊ฐ๋ฐ ํ๊ฒฝ** |
32 | 40 |
|
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** ๋ก ํ์ผ์ ์
๋ก๋ํ๊ณ ๋ณด๊ดํด์. |
40 | 52 |
|
41 | 53 | **ํ์
๊ด๋ฆฌ** |
42 | 54 |
|
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 ๋ฌธ์๋ฅผ ํตํด ํด๋ผ์ด์ธํธ์ ์ํตํด์. |
47 | 59 |
|
48 | 60 | **CI/CD** |
49 | 61 |
|
50 | | -- **Jenkins** |
| 62 | +- **Github Actions** ๋ก ์ฝ๋ ํ๋ฆฌํฐ์ ํ
์คํธ๋ฅผ ๊ฒ์ฌํด์. |
| 63 | +- **Jenkins** ๋ก ๋ฐฑ์๋ ์ฝ๋์ ์ง์์ ์ธ ๋ฐฐํฌ๋ฅผ ์งํํด์. |
| 64 | +- **Codacy** ๋ก ์ง์์ ์ธ ์ฝ๋ ํ๋ฆฌํฐ ๊ฐ์ ์ ์งํํด์. |
| 65 | +- **JACOCO** ๋ก ํ
์คํธ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ๊ฒ์ฌํด์. |
51 | 66 |
|
52 | | -**Dependencies** |
| 67 | +**Security** |
53 | 68 |
|
54 | | -- Spring Web |
55 | | -- Spring Data JPA |
56 | | -- H2 Database |
57 | | -- Spring REST Docs |
58 | | -- Lombok |
| 69 | +- **Spring Security** ๋ฅผ ์ฌ์ฉํ์ด์. |
| 70 | +- ๋ก๊ทธ์ธ ์์๋ **JWT** ํ ํฐ์ ๋ฐํํ์ฌ ์๋ฒ์ ๋ณ๋ ์ ์ฅ์ ์์ด ๋ก๊ทธ์ธ์ ์ ์งํ ์ ์์ด์. |
| 71 | +- CertBot ์ผ๋ก Letโs Encrypt **SSL** ์ธ์ฆ์๋ฅผ ๋ฐ๊ธ๋ฐ์์ด์. |
| 72 | +- **Nginx** ๊ฐ ํ๋ก์๋ก 8080 ํฌํธ๋ฅผ ๋ฐ๋ผ๋ณด๊ฒ ์ค์ ํ์ด์. |
59 | 73 |
|
60 | | -## ๐๏ธ์ค๊ณ |
| 74 | +<br> |
| 75 | + |
| 76 | +## โ์์คํ
์ํคํ
์ฒ |
| 77 | + |
61 | 78 |
|
62 | | -[MoSCoW ๋งํฌ](https://www.notion.so/MoSCoW-4f7d9e241bc24e84ac7c8213ef1d2c85) |
| 79 | +<br> |
63 | 80 |
|
| 81 | +## ๐๏ธ์ค๊ณ |
64 | 82 | ### ERD ์ค๊ณ |
| 83 | + |
| 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 | +|  |  |  | |
65 | 97 |
|
66 | | - |
| 98 | +| **๊ฒ์๊ธ ์์ฑ** | **๋ฌดํ ์คํฌ๋กค** | **๋ง์ด ํ์ด์ง** - ๋ด ์ ๋ณด ์์ | |
| 99 | +| :---: | :---: | :---: | |
| 100 | +|  |  |  | |
67 | 101 |
|
68 | | -## ๐ ๏ธ API ์ค๊ณ |
| 102 | +| **๋์๋ณด๋** | **์นด๋ ํ์ด์ง** | **์นด๋ ํ์ด์ง** - ํด๋น ์๋ณ ๊ธฐ๋ก ๋ฆฌ์คํธ | |
| 103 | +| :---: | :---: | :---: | |
| 104 | +|  |  |  | |
| 105 | +| ๋ง์ด ํ์ด์ง์์ ์ด๋ | ์ฐ๋๋ณ ํํฐ๋ง, ํด๋น ๋ฌ์ ์์ฑ ์ผ์ ํ์ธ ๊ฐ๋ฅ | ์นด๋ ์ ํ์ | |
69 | 106 |
|
70 | | -[๐SURF API ์ค๊ณ ๊ตฌ๊ฒฝ๊ฐ๊ธฐ](https://www.notion.so/6785f7446eba4a0b82d384d025cb28a6) |
| 107 | +___ |
71 | 108 |
|
72 | 109 | ## ๐ปํ๋ก ํธ ๊น ๋ ํฌ |
73 | 110 |
|
74 | | -[๐จโ๐ป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) |
75 | 112 |
|
76 | 113 | ## ๐ํ ๋
ธ์
|
77 | 114 |
|
78 | | -[๐SURF ํ ๋
ธ์
๊ตฌ๊ฒฝ๊ฐ๊ธฐ](https://www.notion.so/8-Ah-puh-Surf-ccc0a5922b8e4f638d6e897b4eb575a6) |
| 115 | +[๐**SURF** ํ ๋
ธ์
๊ตฌ๊ฒฝ๊ฐ๊ธฐ](https://www.notion.so/8-Ah-puh-Surf-ccc0a5922b8e4f638d6e897b4eb575a6) |
0 commit comments