Skip to content

Commit

Permalink
๐Ÿ“ README ๊ธฐ์ˆ ์  ๋„์ „๊ณผ ์œ„ํ‚ค ๋งํฌ ์ˆ˜์ •
Browse files Browse the repository at this point in the history
  • Loading branch information
ttaerrim authored Dec 14, 2023
1 parent a301051 commit 9c90977
Showing 1 changed file with 53 additions and 20 deletions.
73 changes: 53 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<a href='https://www.notion.so/e55bfedb723443adb14dfa0e3910cc42?pvs=21'>๐Ÿ–‹๏ธ ๊ทธ๋ผ์šด๋“œ ๋ฃฐ</a> |
<a href='https://www.notion.so/af66c77dc0f648ce9317a33a37510f24?pvs=21'>๐Ÿ“œ ๊ธฐํš์„œ</a> |
<a href='https://www.figma.com/file/ekdMdDQqhXwJBAf2bus6xJ/%EB%B6%80%EC%8A%A4%ED%8A%B8%EC%BA%A0%ED%94%84-%EB%AA%A8%EB%9D%BD?type=design&node-id=2-1066&mode=design&t=8trPIWAnQYrLKd6J-0'>๐ŸŽจ ๋””์ž์ธ</a> |
<a href='https://github.com/boostcampwm2023/web17_morak/wik'>๐Ÿ” ์œ„ํ‚ค</a>
<a href='https://github.com/boostcampwm2023/web17_morak/wiki'>๐Ÿ” ์œ„ํ‚ค</a>
</p>

# ๋ชจ๋ฝ | Morak
Expand Down Expand Up @@ -46,12 +46,58 @@

## ๐Ÿง‘โ€๐Ÿ’ป ๊ธฐ์ˆ ์  ๋„์ „

| ๋ถ„๋ฅ˜ | ๋‚ด์šฉ |
| :------------: | :------------------------------------------------------------------------------------------------------------- |
| **Common** | โ€ข Monorepo <br/>โ€ข socket.io ์ฑ„ํŒ… |
| **FrontEnd** | โ€ข Test Code ์ž‘์„ฑ <br/>โ€ข ์„ฑ๋Šฅ ์ตœ์ ํ™” <br/>โ€ข ํŒจํ‚ค์ง€ ๋ฐฐํฌ |
| **BackEnd** | โ€ข OAuth, ์ธ์ฆใƒป์ธ๊ฐ€ <br/>โ€ข Unit Test Code ์ž‘์„ฑ |
| **Infra** | โ€ข Github Action CI/CD ๊ตฌ์ถ• <br/>โ€ข VPN ์„œ๋ฒ„ ๊ตฌ์ถ• <br/>โ€ข Nginx ์„œ๋ฒ„ ๊ตฌ์ถ• <br/>โ€ข Docker Registry, Vault ์„œ๋ฒ„ ๊ตฌ์ถ• |

### **Monorepo With Turborepo**

- ๋ชจ๋…ธ๋ ˆํฌ๋ฅผ ๋„์ž…ํ•˜์—ฌ ์ฝ”๋“œ ๊ณต์œ , ์ผ๊ด€๋œ ์ฝ”๋“œ ์Šคํƒ€์ผ, ๋นŒ๋“œ ๋ฐ ํ…Œ์ŠคํŠธ ์บ์‹ฑ์„ ํ†ตํ•ด ํšจ์œจ์„ฑ์„ ์˜ฌ๋ ธ์Šต๋‹ˆ๋‹ค.
- ๋ชจ๋…ธ๋ ˆํฌ์˜ ๋‚ด๋ถ€ ํŒจํ‚ค์ง€ ์‚ฌ์šฉ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์„ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.
- FrontEnd/BackEnd ๊ฐ„ ํƒ€์ž… ๋ถˆ์ผ์น˜ ๋ฌธ์ œ๋ฅผ ์˜ˆ๋ฐฉํ•˜๊ณ  ์ธํ„ฐํŽ˜์ด์Šค ๋ณ€๊ฒฝ์— ์‹ ์†ํ•˜๊ณ  ์ •ํ™•ํ•˜๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ณตํ†ต ํƒ€์ž…์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
- ๊ณตํ†ต ์ปดํฌ๋„ŒํŠธ๋ฅผ ํŒจํ‚ค์ง€ํ™”ํ•˜์—ฌ ์ปดํฌ๋„ŒํŠธ์˜ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.
- configuration ํŒŒ์ผ ์žฌ์‚ฌ์šฉ์œผ๋กœ ์ดˆ๊ธฐ ์„ธํŒ… ๋น„์šฉ์„ ์ค„์ž…๋‹ˆ๋‹ค.
- Turborepo์˜ ์บ์‹ฑ ๊ธฐ๋Šฅ์„ Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ์— ์ ์šฉํ•˜์—ฌ ๋นŒ๋“œ ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ–ˆ์Šต๋‹ˆ๋‹ค.
- [TurboRepo ์„ค์ •](https://www.notion.so/fe9bbfaed0cd411e9a5d0aae7550a863?pvs=21) by ์„œ์ง€์›

### **Test Code**

- ๋ณด๋‹ค ๋” ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ๊ณผ QA ๋ฐฉ์‹์„ ์œ„ํ•œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ์— ๋Œ€ํ•ด ๊ณ ๋ฏผํ–ˆ์Šต๋‹ˆ๋‹ค.
- [UI ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€? (์‹œ๊ฐ์  ํšŒ๊ท€ ํ…Œ์ŠคํŠธ)](https://www.notion.so/UI-ee39d501d6b6498a9583859cc64e8a38?pvs=21) by ์ดํƒœ๋ฆผ

### **์ง€๋„**

- TMap API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ง€๋„ ํŽ˜์ด์ง€๋ฅผ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.
- ์ข‹์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ฃผ๊ธฐ ์œ„ํ•ด Vector์™€ Raster ์ง€๋„ SDK๋ฅผ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์„ฑ๋Šฅ ํƒญ์œผ๋กœ ๋น„๊ตํ•ด ๋ณด๊ณ , ์„ ํƒํ•œ ๊ณผ์ •์„ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค.
- [Tmap API๋กœ ์ง€๋„ ๋ Œ๋”๋ง](https://www.notion.so/TMap-API-06c9e324d093465ea8da56777d338aaa?pvs=21) by ์ด์ง€์›
- [ํผ ์ž‘์„ฑ ์‹œ ์žฅ์†Œ ์„ ํƒ TMap API ์ ์šฉํ•˜๊ธฐ](https://www.notion.so/TMAP-API-1645d224b33d4f968ee81dca843bd8ae?pvs=21) by ์ดํƒœ๋ฆผ
- [๋Š๋ฆผ์˜ ๋ฏธํ•™ (feat. TMap ์ง€๋„ ์„ฑ๋Šฅ ์ธก์ •)](https://www.notion.so/TMap-063aa40efb0e4d0a95c61a990a188f45?pvs=21) by ์ด์ง€์›, ์ดํƒœ๋ฆผ

### **์ฑ„ํŒ…**

- socket.io๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ์ž๋“ค์ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋Œ€ํ™”๋ฅผ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋Š” ์ฑ„ํŒ… ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.
- FE์—์„œ ์ฑ„ํŒ… ๊ตฌํ˜„ ์ค‘ ๊ฒช์€ ์—ฌ๋Ÿฌ ๋ฌธ์ œ ์ƒํ™ฉ๊ณผ ํ•ด๊ฒฐ ๊ณผ์ •์— ๋Œ€ํ•˜์—ฌ ๊ธฐ๋กํ•˜์˜€์Šต๋‹ˆ๋‹ค.
- [FE ์ฑ„ํŒ… ๊ธฐ๋Šฅ ๊ตฌํ˜„๊ณผ ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…](https://www.notion.so/9c866a10d5754c81bf86850a881486ef?pvs=21) by ๋งน์ง€์Šน

### **OAuth2.0๊ณผ ์ธ์ฆ/์ธ๊ฐ€**

- NestJS์—์„œ ์†Œ์…œ ๋กœ๊ทธ์ธ์— ๋Œ€ํ•œ ์ธ์ฆ๊ณผ ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์ธ์ง€ํ•˜์—ฌ ์ธ๊ฐ€ ์ฒ˜๋ฆฌ๋ฅผ ๊ธฐ๋กํ•˜์˜€์Šต๋‹ˆ๋‹ค.
- ๋กœ๊ทธ์ธ์„ ํ†ตํ•ด ํ•ด๋‹น ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•ด๋‚ด์–ด ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ธฐ๋กํ•˜์˜€์Šต๋‹ˆ๋‹ค.
- [์ง€๊ธˆ ์ ‘์†ํ•œ ๋‹น์‹  ์ •์ฒด๊ฐ€ ๋ฌด์—‡์ด์˜ค?](https://www.notion.so/67f910a8f32140ccb43bf9d9622c8b84?pvs=21) by ์ž„๋™ํ˜
- [์ธ์ฆ(Authentication)๊ณผ ์ธ๊ฐ€(Authorization)](https://www.notion.so/Cookie-ea27c771aeef406aadc02709f587c99e?pvs=21) by ์ž„๋™ํ˜

### ๊ธฐํƒ€

- [assets๋Š” ์™œ, ์–ด๋””์—์„œ ๊ด€๋ฆฌํ•ด์•ผ ํ• ๊นŒ์š”? public? src?](https://www.notion.so/assets-9b3e50f913cb4fdbabce2c0b5a06851f?pvs=21) by ์ดํƒœ๋ฆผ
- [react-query์™€ ์ปดํฌ๋„ŒํŠธ props ์ „๋‹ฌ](https://www.notion.so/a86d59c0a6924b27b764e589df34af41?pvs=21) by ๋งน์ง€์Šน
- [NestJS ๋นก์น˜๋Š” ๋ผ์šฐํŒ… ์‹œ์Šคํ…œ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž](https://www.notion.so/f3d7e301dd5040d2950f423ca211ecae?pvs=21) by ์ž„๋™ํ˜
- [Jest ๊ฒฝ๋กœ๋ฅผ ์ผ์ผํžˆ ์ง€์ •ํ•ด์•ผ ํ•œ๋‹ค๊ณ ?](https://www.notion.so/433965335b5845878257813e3e733cac?pvs=21) by ์ž„๋™ํ˜
- [Jotai vs. Zustand](https://www.notion.so/Jotai-vs-Zustand-e0837b29d53e4fe2a3793dee1a6487c9?pvs=21) by ๋งน์ง€์Šน
- [๋†€๋ž๊ณ  ์žฌ๋ฏธ์žˆ๋Š” ์ ‘๊ทผ์„ฑ ๊ฐœ์„ ](https://www.notion.so/5e26158dc5254aba9b6bff2d706be07d?pvs=21) by ๋งน์ง€์Šน
- [๋ชจ๋ฐ”์ผ์—์„œ ํผ ์ž…๋ ฅ ์‹œ ํ™”๋ฉด์ด ํ™•๋Œ€๋˜๋Š” ํ˜„์ƒโ€ฆ ์ ‘๊ทผ์„ฑ๊ณผ ๊ด€๋ จ ์žˆ๋‹ค๊ณ ?](https://www.notion.so/6f3bad0053f04f84afed52d562d78be6?pvs=21) by ์ดํƒœ๋ฆผ
- [Nginx ์„ค์ •](https://www.notion.so/dd2c18bdc779419b8928424f1a97048e?pvs=21) by ์„œ์ง€์›
- [Docker Registry ์„ค์ •](https://www.notion.so/61b9b8ab5f1440eeb738248832cfaaba?pvs=21) by ์„œ์ง€์›


> ์ด ์™ธ์—๋„ [๋ชจ๋ฝ ํŒ€์˜ ๊ฐœ๋ฐœ ์ผ์ง€](https://www.notion.so/ttaerrim/50a6652038d04e61920dbf8faecb80db?v=5eec47d4350b45b8b10da4c1ec7dc5d6)๋ฅผ ๊ตฌ๊ฒฝํ•ด ๋ณด์„ธ์š”!

## ๊ธฐ์ˆ  ์Šคํƒ

Expand All @@ -75,19 +121,6 @@
2. ๊ฐœ๋ฐœ feature๋Š” `develop` ๋ธŒ๋žœ์น˜์—์„œ ๋”ฐ์„œ ์ž‘์—… ํ›„ `develop` ๋ธŒ๋žœ์น˜๋กœ ๋จธ์ง€ํ•œ๋‹ค.
3. ํ˜‘์—…์œผ๋กœ ์ธํ•œ ์ถ”๊ฐ€ ๋ธŒ๋žœ์น˜๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ upstream์—์„œ `develop` ๊ธฐ์ค€ `feature` ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜์—ฌ 2์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ž‘์—…ํ•œ๋‹ค.

## ๊ฐœ๋ฐœ ์ผ์ง€

| ์ž‘์„ฑ์ž|๋‚ด์šฉ |
| ------ | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ์ดํƒœ๋ฆผ | โ€ข [assets๋Š” ์–ด๋””์— ๋‘์–ด์•ผ ํ• ๊นŒ์š”?](https://www.notion.so/assets-9b3e50f913cb4fdbabce2c0b5a06851f?pvs=21)<br/>โ€ข [ํผ ์ž‘์„ฑ ์‹œ ์žฅ์†Œ ์„ ํƒ TMAP API ์ ์šฉํ•˜๊ธฐ](https://www.notion.so/1645d224b33d4f968ee81dca843bd8ae?pvs=21)<br/>โ€ข [UI ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€? (์‹œ๊ฐ์  ํšŒ๊ท€ ํ…Œ์ŠคํŠธ)](https://www.notion.so/ttaerrim/UI-ee39d501d6b6498a9583859cc64e8a38) |
| ๋งน์ง€์Šน | โ€ข [FE ์ฑ„ํŒ… ๊ธฐ๋Šฅ ๊ตฌํ˜„๊ณผ ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…](https://www.notion.so/FE-9c866a10d5754c81bf86850a881486ef?pvs=21)<br/>โ€ข [react-query์™€ ์ปดํฌ๋„ŒํŠธ props ์ „๋‹ฌ](https://www.notion.so/a86d59c0a6924b27b764e589df34af41?pvs=21) |
| ์ž„๋™ํ˜ | โ€ข [NestJS JWT ์œ ์ € ์ •๋ณด ๋ฐ˜ํ™˜](https://www.notion.so/NestJS-JWT-67f910a8f32140ccb43bf9d9622c8b84?pvs=4)<br/>โ€ข [NestJS์˜ ๋ณต์žกํ•œ ๋ผ์šฐํŒ… ์‹œ์Šคํ…œ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž](https://www.notion.so/NestJS-f3d7e301dd5040d2950f423ca211ecae?pvs=4)<br/>โ€ข [์ธ์ฆ(Authentication)๊ณผ ์ธ๊ฐ€(Authorization)](https://www.notion.so/Cookie-HttpOnly-Secure-ea27c771aeef406aadc02709f587c99e?pvs=4)<br/>โ€ข [Jest path alios ์„ค์ •](https://www.notion.so/Jest-path-alios-433965335b5845878257813e3e733cac?pvs=4) |
| ์ด์ง€์› | โ€ข [Tmap API๋กœ ์ง€๋„ ๋ Œ๋”๋ง](https://www.notion.so/Tmap-API-06c9e324d093465ea8da56777d338aaa?pvs=21) |
| ์„œ์ง€์› | |
| ๊ณต๋™ | โ€ข [Jotai vs. Zustand](https://www.notion.so/Jotai-vs-Zustand-e0837b29d53e4fe2a3793dee1a6487c9?pvs=21) |

์ด ์™ธ์—๋„ [๋ชจ๋ฝ ํŒ€์˜ ๊ฐœ๋ฐœ ์ผ์ง€](https://www.notion.so/ttaerrim/50a6652038d04e61920dbf8faecb80db?v=5eec47d4350b45b8b10da4c1ec7dc5d6)๋ฅผ ๊ตฌ๊ฒฝํ•ด ๋ณด์„ธ์š”!

## ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป `command`

### package install
Expand Down

0 comments on commit 9c90977

Please sign in to comment.