Next.js์ React๋ฅผ ์ฌ์ฉํ์ฌ ์์ ๊ฒ์ํ + ์ค๊ณ ๋ง์ผ ์น์ฌ์ดํธ๋ฅผ ๊ฐ๋ฐํ์์ต๋๋ค.
โ ์์ ๋กญ๊ฒ ๊ธ์ ์ธ ์ ์๋ ๊ฒ์ํ ์๋น์ค
๐๏ธ ์ค๊ณ ์ํ์ ๋ฑ๋กํ๊ณ , ํฌ์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌ๋งคํ ์ ์๋ ์๋น์ค
Frontend ๊ธฐ์ ์คํ
๋ผ์ด๋ธ๋ฌ๋ฆฌ
- react-hook-form (๋น์ ์ด ์ปดํฌ๋ํธ ํผ)
- react-slick (๋ฐฐ๋ ์ผ๋ฌ์ )
- dompurify (XSS ๊ณต๊ฒฉ ๋ฐฉ์ด)
- react-daum-postcode (๋ค์ ์ฐํธ๋ฒํธ ๊ฒ์)
- kakao-map-api(์นด์นด์ค๋งต ์ง๋)
- react-infinite-scroller (๋ฌดํ ์คํฌ๋กค)
- react-player (๋์์ ํ๋ ์ด์ด)
- react-quill (์น ์๋ํฐ)
- Portone(๊ฒฐ์ ๋ชจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ)
- yup (๊ฒ์ฆ ๋ผ์ด๋ธ๋ฌ๋ฆฌ with hook form)
- prettier (์ฝ๋ ํฌ๋ฉง)
๋ฐฑ์๋ API
๋ฐฐํฌ
$ git clone https://github.com/ParkSohyunee/freeboard.git
$ yarn install
$ yarn dev
# http://localhost:3000 ์ ์
๐ ๋ฐฐํฌ์ฃผ์ https://freeboard-liart.vercel.app/
GraphQL API๋ localhost์ 3000๋ฒ ํฌํธ๋ง ์น์ธ๋๋๋ก ์๋ฒ์์ block ์ ์ฑ ์ด ์ค์ ๋์ด ์์ต๋๋ค.
๋ฐ๋ผ์, ํ์ฌ ๋ฐฐํฌ์ฃผ์์์๋ GraphQL API๋ฅผ ์์ฒญํ์ง ๋ชปํ์ฌ ๊ธฐ๋ฅ์ด ๋์ํ์ง ์์ต๋๋ค.
- ํ์๊ฐ์ , ๋ก๊ทธ์ธ, ๋ก๊ทธ์์
- ์์ ๊ฒ์ํ CRUD
- ๋๊ธ CRUD
- ์ค๊ณ ๋ง์ผ ์ํ๋ฑ๋ก CRUD
- ์ ์ฒด ๊ฒ์ํ ๋ชฉ๋ก ์ค์๊ฐ ๊ฒ์ ์กฐํ
- ์นด๋ ๊ฒฐ์ ๋ก ํฌ์ธํธ ์ถฉ์
- ์ถฉ์ ํ ํฌ์ธํธ๋ก ์ํ ๊ตฌ๋งค
์์ ๊ฒ์ํ ๋ชฉ๋ก์กฐํ
- - ๋ฐ์ํ UI ์ ์ฉ(์ ์ฒดํ์ด์ง)
- - ํ์๊ฐ์ , ๋ก๊ทธ์ธ, ๋ก๊ทธ์์ ๊ธฐ๋ฅ
- - ํ์ด์ง๋ค์ด์ ๊ธฐ๋ฅ
- - ๊ฒ์์ด ํค์๋๋ก ์ค์๊ฐ ๊ฒ์ ๊ธฐ๋ฅ
์์ ๊ฒ์ํ ์์ธํ์ด์ง
- - ๊ฒ์ํ์์ ์์ฑํ ์ ๋ณด๊ฐ ๋ณด์ด๋ ํ์ด์ง
- - ๋์์ ์ฌ์, ์ข์์/์ซ์ด์ ๊ธฐ๋ฅ
- - ๊ธ์ ์์ ๊ณผ ์ญ์ ๊ฐ ๊ฐ๋ฅ
- - ๋ณ์ ๊ณผ ํจ๊ป ๋๊ธ ์์ฑ, ์์ , ์ญ์ ๊ฐ๋ฅ
์ค๊ณ ๋ง์ผ ์ํ ๋ฑ๋ก
- - ์น ์๋ํฐ๋ก ๊ธ์จ ํฌ๊ธฐ ์ ํ, ๋งํฌ ์ฒจ๋ถ, ๋งํฌ๋ค์ด์ผ๋ก ๊ธ ์์ฑ
- - ์ฃผ์๋ฅผ ๊ฒ์ํ๋ฉด ์นด์นด์ค์ง๋์ ๊ฑฐ๋์์น ๋งํฌ์ ํ์
- - ์ํ๋ ํ๊ทธ๋ฅผ ์คํ์ด์ค๋ฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๊ฐ ๋ฐ ํด๋ฆญํ๋ฉด ํ๊ทธ ์ญ์
- - ์ด๋ฏธ์ง ์ ๋ก๋
๐ ๋ฐ์ํ UI ์ ์ฉ ํ๋ฉด
์ค๊ณ ๋ง์ผ ์์ธํ์ด์ง
- - ์์ฑ์๋ง ๊ธ ์์ ๋ฐ ์ญ์ ๊ฐ๋ฅ
- - ์ํ ์ฐํ๊ธฐ ๋ฐ ํฌ์ธํธ๋ก ์ํ ๊ตฌ๋งค
- - ๊ฑฐ๋ ์์น ๋ณด๊ธฐ
- - ๋๊ธ CRUD