 
 ์ฌ์ด ์์
 ๊ด๋ฆฌ๋ก ์ด๋ฆฌ๋ ์ ํํ ๋์ ๊ฒฐ์ค 
๊ณผ์ธ์ ์ถ๊ฒฐ ์ฒดํฌ๋ถํฐ ์์
๋น ๊ด๋ฆฌ๊น์ง ํ๋ฒ์ ํด๋ฆญ์ผ๋ก ์ฝ๊ฒ ๊ด๋ฆฌํ์ธ์.  
|   |   | 
| ๊ถ์๋น ๐ | ๊ถํ์ธ ๐ | 
original Members ๋ฅ์ฑ๊ฒฝ๐, ๋ฐํฌ์ ๐ฅ, ์์ง์๐
| ์ญํ | ์ข ๋ฅ | 
|---|---|
| Library | |
| Programming Language | |
| Styling | |
| State Management | |
| Data Fetching | |
| Formatting | |
| Version Control | |
| Package Manager | |
| Deployment | 
- 
ํ์ ๊ณผ๋ชฉ ๋ฑ๋ก 
- 
ํ์ฐจ, ๋ ์ง, ์๊ฐ ์ฌ๋ผ์ด๋ ๊ตฌํ 
- 
์ ๊ธฐ ์์ผ ์ ํ 
 (์ฒซ ์์ ์ผ ๊ฒฝ์ฐ ๋ํดํธ ๊ฐ์ ํ์ฌ ๋ ์ง์ด๋ฉฐ, ํ์ฌ ์ ํํ ์์ผ์ ํด๋นํ์ง ์๋ ๋ ์ง๋ฅผ ์ฒซ ์์ ์ผ๋ก ์ ํํ ๊ฒฝ์ฐ, ์ ์ฅ ๋ถ๊ฐ ๋ฐ ์ ํ๋ ์์ผ ๋ฐฐ์ด์ ์ํํ๋ฉฐ ํด๋น ์์ผ์ด ์๋ ๋ ์ง ๋ฒํผ ๋นํ์ฑํ)
- 
์์ ์ผ์ ์์ธ ์ผ์ด์ค ์ฒ๋ฆฌ ์ํฉ ๋นํ์ฑ ๋ฒํผ ์กฐ๊ฑด๋ฌธ์ ํตํด ์๊ฐ ๋ฐ ์ข ๋ฃ ์๊ฐ์ ๋ชจ๋ ์ ๋ ฅํ์ง ์์์ ๋ ์์ ์ผ์ ์ถ๊ฐ ์๊ฐ๋ง ์ ๋ ฅํ๊ณ ์์ผ์ ์ ๋ ฅํ์ง ์์ ๊ฒฝ์ฐ ์์ ์ผ์ ์ถ๊ฐ ์์ผ์ ์ ํํ ๋, ์์, ์ข ๋ฃ ์๊ฐ์ ์ ๋ ฅํ์ง ์์ ๊ฒฝ์ฐ ๋ชจ๋ ๋ฒํผ ์ฒซ ์์ ์ผ์ ํด๋นํ๋ ์์ผ์ด ์ ํํ ์์ ์ผ์ ์์ผ์ ํด๋นํ์ง ์๋ ๊ฒฝ์ฐ ์ ์ฅ 
- 
useState๋ฅผ ์ฌ์ฉํด ๊ฐ ์ ๋ ฅํผ์focus๋์๋ ์ง ๊ด๋ฆฌ ์ ๋ ฅ๋ฐ์ ๊ฐrecoil๋ก ๊ด๋ฆฌ
- 
swiper๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ฌ๋ผ์ด๋ ๊ตฌํ<StyledSwiper direction="vertical" slidesPerView={7} spaceBetween={15} freeMode={true} freeModeSticky={true} freeModeMomentumRatio={0.25} freeModeMinimumVelocity={0.1} loop={true} loopAdditionalSlides={5} slideToClickedSlide={true} centeredSlides={true} onSlideChange = {handleSlideChange} > {slides} </StyledSwiper>
- 
loop = {true}์์ฑ๊ฐ์ ํตํ ์คํฌ๋กค์ ์ด์ด์ง๋๋ก ๊ตฌํ
- 
swiper.realIndex๋ฅผ ํตํด ์ ์ ๊ฐ ์ ํํ ์ธ๋ฑ์ค์ ์ฌ๋ผ์ด๋ ์ถ์ 
 ๋ ์ง ์ฌ๋ผ์ด๋์ ๊ฒฝ์ฐ, ํ์ฌ ๋ฌ์ ๊ธฐ์ค์ผ๋ก ์ด์ , ํ์ฌ, ๋ค์ ๋ฌ์ ๋ชจ๋ ๋ ์ง๋ฅผ ๋ด๋ ๊ฐ์ฒด ๋ฐฐ์ด์ ์์ฑํ์ฌ ๊ฐ ๊ฐ์ฒด๊ฐ ํ๋์ ์ฌ๋ผ์ด๋๊ฐ ๋๋๋ก ๊ตฌํ
 
- ์์
 ๊ด๋ฆฌ ( ์ถ๊ฒฐ ๋ฐ ์
๊ธ ๊ด๋ฆฌ) 
- ์ถ๊ฒฐ ์ฒดํฌ ํ ์๋ฆผ ๋ณด๋ด๊ธฐ 
- ์
๊ธ ์๋ฆผ ๋ณด๋ด๊ณ  ์
๊ธ ๋ฑ๋ก 
- ์ฐ์ฅํ์ง ์์ ์์
์ด ์๋ ๊ฒฝ์ฐ ๋ฐฐ๋ ๋์ฐ๊ธฐ 
- children, props๋ฅผ ์ด์ฉํ ๊ณตํต ์ปดํฌ๋ํธ ๊ตฌํ
- ์์
 ๋ด์ญ ๋๋ ์
๊ธ ๋ด์ญ์ธ์ง์ ๋ํ ํ์ฌ ํ์ด์ง ์ ๋ณด recoil๋ก ๋ถ๋ฌ์ค๊ธฐ
 
- ํ ํ์ด์ง์์ ์์
 ์งํ ์ค์ธ ํ์ ์ถ์ ์ฒดํฌ 
- ์์
 ๊ด๋ฆฌ ํ์ด์ง์์ ์ถ๊ฒฐ ์ฒดํฌ ๋ฐ ์์  
- ๋์น ์ถ๊ฒฐ ํ์ด์ง์์ ์ถ๊ฒฐ ์ฒดํฌ 
- ์ถ๊ฒฐ ์์  ์ ์ด์  ์ถ๊ฑ ์ฌํญ ๋ฒํผ ๋นํ์ฑํ
- ์ถ๊ฒฐ ์ฒดํฌ ํ ์คํธ ๋ชจ๋ฌ, ์ถ๊ฒฐ ์ฒดํฌ ์ ํ์ ํ์ธ ๋ชจ๋ฌ ๋์ฐ๊ธฐ 
- ์ต์ข
 ์ถ๊ฒฐ ์ฒดํฌ ํ์ธ ์ ์ฒดํฌ๋๋ ์ ๋๋ฉ์ด์
 ๊ตฌํ 
- ์ต์ข
 ์ถ๊ฒฐ ์ฒดํฌ ์ดํ ์ถ๊ฒฐ ์๋ฆผ ์ ์ก ํ ์คํธ ๋ชจ๋ฌ 
- ํธ์ฌ ์๋ฆผ์ ์๋๊ฐ ํ์ฉํ์ง ์์์ ์์ ๊ฒฝ๊ณ  ๋ชจ๋ฌ 
- ์ถ๊ฒฐ ์๋ฆผ
- ๋ชจ๋  ๊ฒฝ์ฐ์ ์๋ฅผ ๋ฐ์ ธ์ (์ถ์, ๊ฒฐ์, ์ทจ์, ์ถ์์ฒดํฌ ๋์น ์ดํ์ ์ถ์, ๊ฒฐ์, ์ทจ์ ์ ํ ๋ฑ) switch-case๋ฌธ๊ณผ์ผํญ ์ฐ์ฐ์์ฌ์ฉ
- ์บ๋ฆฐ๋๋ทฐ date-fns์ผ๋ก ๊ตฌํ
- ์ค๋ ๋ ์ง๋ถ๋ถ ๋ฉ์ผ ์ปฌ๋ฌ์ ๋ฐฐ๊ฒฝ์ผ๋ก ๋ค๋ฅธ ๋ ์ง์ ๋ค๋ฅด๊ฒ ๊ตฌ์ฑ 
- getํด์จ ๋ฐ์ดํฐ์ ๋ง๋ ๋ ์ง์ ์๊ฐ ์์๋๋ก ์ฌ๋ ์ด๋ฆ ๋ฐ ์์ ์๊ฐ ๋ถ๋ฌ์ ์บ๋ฆฐ๋์ ๋์์ฃผ๊ธฐ
- ์ค์ผ์ค ์์  ์บ๋ฆฐ๋, ์์ ์ด ๋ถ๊ฐ๋ฅํ๊ณ  ์กฐํ๋ง ๊ฐ๋ฅํ ์บ๋ฆฐ๋, ์์๋ก ์ ์ฅํ ์์
 ์๊ฐ๊ณผ ํจ๊ป ๊ฐ์ง๊ณ  ์๋ ์ค์ผ์ค์ ํ ๋ฒ์ ๋ณด์ฌ์ฃผ๋ ์บ๋ฆฐ๋๋ก ๋๋๊ธฐ 
- ๊ฐ ์บ๋ฆฐ๋์์ ์ํ๋ ๋ ์ง๋ฅผ ํด๋ฆญํ  ์, ํด๋น ๋ ์ง์ ์๋ ์ค์ผ์ค์ ๋ชจ๋ ๋ณด์ฌ์ฃผ๋ ๋ชจ๋ฌ ๊ตฌํ 
- ๊ฐ ๋ ์ง์ 4๊ฐ ์ด์์ ์ค์ผ์ค์ด ์์ ๊ฒฝ์ฐ, 2๊ฐ๊น์ง๋ง ๋ณด์ฌ์ฃผ๊ณ  ๋๋ณด๊ธฐ์ ๊ด๋ จ๋ ์์ด์ฝ ๋์์ฃผ๊ธฐ 
- ์์ ์ด ๊ฐ๋ฅํ ์บ๋ฆฐ๋์์ ์ํ๋ ๋ ์ง๋ฅผ ํด๋ฆญํ๋ฉด ํ ์คํธ ๋ชจ๋ฌ์์ ํธ์ง๋ฒํผ์ ๋๋ฅผ ์์ ํธ์ง ๋ชจ๋๋ก ์ ํ 
- ํธ์ง ๋ชจ๋ ๋ชจ๋ฌ์์ ํธ์งํ๊ธฐ ์ํ๋ ์ค์ผ์ค์ ํด๋ฆญํ์ฌ ํธ์ง ํ์ด์ง๋ก ์ด๋ 
- ํธ์ง ํ์ด์ง์์ ์ฌ๋ผ์ด๋๋ฅผ ์ด์ฉํด ์ํ๋ ์ค์ผ์ค๋ก ์์ ํ๊ณ , ์ ์ฅ์ ๋๋ฅด๋ฉด ๋ฐ๋ก ์บ๋ฆฐ๋๋ก ํ์ธํ๋๋ก ๊ตฌํ
- date-fns๋ฅผ ์ฌ์ฉํ ์ ์ฒด์  ๋ ์ด์์ ๊ตฌํ
- while๋ฌธ์ ์ด์ฉํด ํ ๋ฌ์ ๋ ์ง๋ฅผ ๋ณด์ฌ์ฃผ๋๋ก ๊ตฌํ
- ๊ณตํต ์ปดํฌ๋ํธ๋ฅผ ์ด์ฉํ์ฌ, ํ ์คํธ ๋ชจ๋ฌ, ์์  ๋ทฐ ์ฌ๋ผ์ด๋ ๋ฑ ๊ตฌํ
- react-query์- get-patch๋ฅผ ์ฌ์ฉํ data ๊ด๋ฆฌ
- PWA ํ๊ฒฝ์์ ์ผ๋ฐ ๋ค์ดํฐ๋ธ ์ฑ๊ณผ ๋์ผํ๊ฒ ํธ์ ์๋ฆผ์ ๋ฐ์ ์ ์๋๋ก ์ค์ 
 ์ ์๋ ์ฌ์ฉ์๊ฐ ์ถ๊ฒฐ ์ฒดํฌ ๋๋ ์ ๊ธ ์๋ฆผ์ ๋ณด๋ผ ๊ฒฝ์ฐ, ํ๋ถ๋ชจ ์ฌ์ฉ์์๊ฒ ํธ์ฌ ์๋ฆผ์ด ๊ฐ๋๋ก ๊ตฌํ
- ํ์ด์ด๋ฒ ์ด์ค ํ๋ก์ ํธ ์์ฑ ํ ๋ฐ์ ํ  sdk๋ฅผ ์ด์ฉํด FCM์ ์ฐ๊ฒฐํ์ฌ ํธ์ ์๋ฆผ ๊ตฌํ 
- FCM์ผ๋ก๋ถํฐ ์ ์ ์ deviceToken์ ๋ฐ๊ณ , ์ด๋ฅผ ์๋ฒ์๊ฒ postํ์ฌ ๊ธฐ๊ธฐ ๋ฑ๋ก
- ๋ฑ๋ก๋ ๊ธฐ๊ธฐ๋ก ์๋ฆผ์ด ๊ฐ ์ ์๋๋ก ๊ตฌํ
- PWA ํ๊ฒฝ์์ ์ผ๋ฐ ๋ค์ดํฐ๋ธ ์ฑ๊ณผ ๋์ผํ๊ฒ ํธ์ ์๋ฆผ ๊ฐ๋ฅ.
|-- ๐ .github
|-- ๐ .husky
|-- ๐ node_modules
|-- ๐ public
|-- ๐ src
    |-- ๐ api
    |-- ๐ atom
    |-- ๐ assets
        |-- ๐ icon
        |-- ๐ image
        |-- ๐ assets.d.ts
        |-- ๐ index.ts
    |-- ๐ core
    |-- ๐ components
        |-- ๐ common
    |-- ๐ hooks
    |-- ๐ mocks
    |-- ๐ pages
    |-- ๐ style
        |-- globalStyle.ts
        |-- style.d.ts
        |-- theme.ts
    |-- ๐ utils
    |-- ๐ type
    |-- App.tsx
    |-- main.tsx
    |-- Router.tsx
    |-- vite-env.d.ts
|-- .eslintrc.cjs
|-- .gitignore
|-- .prettierrc
|-- index.html
|-- package.json
|-- README.md
|-- tsconfig.json
|-- tsconfig.node.json
|-- vite.config.ts
|-- yarn.lock


