โ๋๊ตฌ๋ชจ์โ๋ ์๋ฏผ๋ค์๊ฒ ์ด๋ฒคํธ์ ๊ด๋ จ๋ ์ ๋ณด์ ๋ฏธ์ ์ ์ ๊ณตํด ์๋ฏผ๋ค์ ์ด๋ฒคํธ ์ฐธ์ฌ๋ฅผ ์ด๊ตฌํ๋ ์ฑ์น์ ๋๋ค. โ๋๊ตฌ๋ชจ์โ๋ ์๋ฏผ๋ค์ด ๋๊ตฌ์์ ํ๋ํ๋ ๊ฒ๋ค์ ๊ธฐ๋กํ๋ฉฐ ์ด์ ๋ํ ๋ณด์์ ์ ๊ณตํฉ๋๋ค.
- Cํ์ - ๋๊ตฌ ์ง์ญ ์๊ถ์ ์ด๋ฆฌ๋๋ฐ ๋์์ ์ฃผ๋ ์๋น์ค
๊ถ์ ์ฐ | ๋ฐ์ฌ๋ฏผ | ์ฅ๊ธฐ์ | ํฉ๋ถ์ฐ |
๊ธฐํ | ๊ฐ๋ฐ | ๊ฐ๋ฐ / ๋์์ธ | ๊ฐ๋ฐ |
โ๋๊ตฌ๋ชจ์โ๋ ํฌ๊ฒ 4๊ฐ์ง ํ์ด์ง๋ฅผ ๊ฐ์ง๋๋ค. 1๋ฒ์งธ๋ ์ด๋ฒคํธ์ ๋๋ค. ์ด๋ฒคํธ๋ ๋๊ตฌ์์ ์งํ๋๋ ์ถ์ , ์ผ์์ฅ, ๊ฐ์ฐ ๋ฑ์ ์ ๋ณด๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ ๊ณต๋๋ ์ ๋ณด๋ ์ด๋ฒคํธ์ ์ด๋ฆ, ํฌ์คํฐ, ์ฃผ์ต, ์์น, ๊ธฐ๊ฐ, ์ธ๋ถ ์ค๋ช ์ ๋๋ค. ๊ฐ๊ฐ์ ์ด๋ฒคํธ์ ์ ๋ณด๋ฅผ ์ฝ๊ณ ํธํ๊ฒ ํ์ธํ ์ ์์ต๋๋ค. ๋ํ ์์น ์ธ์ฆ ๊ธฐ๋ฅ์ ํตํด ์ด๋ฒคํธ์ ์ฐธ์ฌํ ๊ฒ์ ๊ธฐ๋กํ ์ ์์ต๋๋ค.
2๋ฒ์งธ๋ ๋ฏธ์ ์ ๋๋ค. ๋ฏธ์ ์ โ๋๊ตฌ๋ชจ์โ๋ง์ ํน๋ณํ ๊ธฐ๋ฅ์ ๋๋ค. โ์ผ์์ฅ ์ ๋ณตํ๊ธฐโ, โ์ถ์ ๋ง์คํฐโ ๋ฑ ๋๊ตฌ์์ ์ผ์ด๋๋ ์ด๋ฒคํธ์ ๊ด๋ จ๋ ์ฌ๋ฌ๊ฐ์ง ๋ฏธ์ ์ ์ ๊ณตํด์ฃผ๋ฉฐ ์ด ๋ฏธ์ ์ ํด๊ฒฐํ ์ ๋ฑ์ง์ ๋ณด์์ ์ ๊ณตํฉ๋๋ค. ๋ฑ์ง๋ ๋ง์ดํ์ด์ง๋ฅผ ๊พธ๋ฏธ๋ ๊ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ณด์์ ๋ฏธ์ ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ ๊ณต๋ ์์ ์ ๋๋ค.
3๋ฒ์งธ๋ ๋ญํน์ ๋๋ค. โ๊ฐ์ฅ ๋ง์ด ์์ฅ์ ๋ฐฉ๋ฌธํ ์ฌ๋โ, โ๊ฐ์ฅ ๋ง์ ์ถ์ ์ ์ฐธ์ฌํ ์ฌ๋โ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ๋ญํน์ ๋ณผ ์ ์์ผ๋ฉฐ ์ด๋ ์์ ์ด ์ผ๋ง๋ ๋ง์ ๋๊ตฌ์ ์ด๋ฒคํธ์ ์ฐธ์ฌํ๋์ง ์ ์ ์๋ ์งํ๊ฐ ๋ฉ๋๋ค.
4๋ฒ์งธ๋ ๋ง์ดํ์ด์ง์ ๋๋ค. ๋ง์ดํ์ด์ง๋ ์์ ์ ์ ๋ณด์ ์์งํ ๋ฑ์ง๋ค, ๊ทธ๋ฆฌ๊ณ ํต๊ณ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ง์ดํ์ด์ง๋ ์์ ์ด ํ๋ํ ๋ฑ์ง์ ์์ ์ ๋ญํน์ผ๋ก ๊พธ๋ฐ ์ ์์ผ๋ฉฐ, ํต๊ณ์์๋ ์ฐธ์ฌํ ํ์ฌ ์, ๋๋ฌ๋ณธ ์์ฅ ์ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ์ถ์ ์ ์์ฅ ์ ๋ณด ์ด๋ ๊ฐ๋ฅ
- ์ธ๋ถ์์ ์ฌ์ฉํ ์ผ์ด ๋ง์ ๊ฒ์ ์์๋๋ฏ๋ก Mobile ์ ์ ์นํ์
- PC ์น๋ ์ ์์ ์ผ๋ก ๋์ํ๋๋ก
css - @media
๋ฅผ ์ด์ฉํ ๋ฐ์ํ ์คํ์ผ ์ ์ฉ - ๋ฏธ์ ์ด๋ผ๋ ์ฐจ๋ณํ๋ ๊ธฐ๋ฅ์ ํตํด ํฅ๋ฏธ๋ฅผ ๋ถ๋ฌ์ผ์ผํด
- ๋ฑ์ง๋ผ๋ ๊ธฐ๋ฅ์ ํตํด ์ฌ๋๋ค์ ์ฐธ์ฌ ์ ๋
์๋น์ค์ ์ค์ ๊ตฌํ ๋ด์ฉ๊ณผ ๊ฒฐ๊ณผ๋ฌผ์ ๊ธฐ์ฌํ๋ค.
- ๊ตฌ๊ธ ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธ
- ๋ง์ฝ ๋ก๊ทธ์ธ ์ธ์
์ด ์๋ค๋ฉด,
/
๊ฒฝ๋ก ์ ์์/login
์ผ๋ก ๋ฆฌ๋๋ ์ ๋จ - ๋ง์ฝ ๋ก๊ทธ์ธ ์ธ์
์ด ์์ง๋ง ํ์๊ฐ์
๋์ด์์ง ์๋ค๋ฉด,
/register
๋ก ๋ฆฌ๋๋ ์ ๋จ
- ๋ก๊ทธ์ธ ์ธ์ ์ฒ๋ฆฌ ํ ํ์๊ฐ์ ํ๋ ํ์ด์ง
- ์ด๋ฒคํธ(์์ฅ, ์ถ์ , ๊ณต์ฐ/์ ์) ๋ฑ์ ๋ชฉ๋ก์ ํ์
- ์ด๋ฒคํธ ๊ฒ์ ๊ธฐ๋ฅ
- ์นด์นด์ค ๋งต API๋ฅผ ํตํด ์ง๋ ์ฐ๋, ํด๋น ์ด๋ฒคํธ์ ์์น ํ์ธ์ด ํธ๋ฆฌ
- HTML5 Geolocation API๋ฅผ ํ์ฉํด ์ฌ์ฉ์์ ํ์ฌ ์์น(์๋, ๊ฒฝ๋)๋ฅผ ๊ฐ์ ธ์ค๊ณ , ํ์ฌ์ฅ์ผ๋ก๋ถํฐ ์ผ์ ๊ฑฐ๋ฆฌ ๋ด์ ์๋์ง ํ๋จํ์ฌ ์ด๋ฒคํธ(์์ฅ, ์ถ์ ) ์ฐธ์ฌ ์ฌ๋ถ ์ธ์ฆ
- ์ด๋ฒคํธ ์ฐธ์ฌ ์ธ์ฆ์ ์๋ฃํ๋ฉด ๋ฑ์ง๋ฅผ ์ง๊ธ
- ๋ฏธ์ ๋ณ ๋จ์ ์๊ฐ๊ณผ ์ฅ์ ๋ฑ์ ํ๋์ ํ์ธ ๊ฐ๋ฅ
- ๋ฏธ์ ์ ๋ํ ์ธ๋ถ์ ๋ณด(์ ํ, ์งํ์ค ์ฌ๋ถ, ๋์ด๋, ์ฐธ์ฌ์ ์ ๋ฑ) ํ์ธ ๊ฐ๋ฅํ ํ์ด์ง
- ์ฌ์ง ์ ๋ก๋๋ฅผ ํตํ ๋ฏธ์ ์ํ, ๋ฑ์ง ์ง๊ธ
- ์ ํ๋ณ(์์ฅ, ์ถ์ , ๊ณต์ฐ/์ ์) ์ฌ์ฉ์ ๋ฑ์ง ๋ญํน์ ํ์
- ํ๋กํ ์์ ๊ฐ๋ฅ
- ๋ด ํ๋กํ ๊ณต์ ๊ฐ๋ฅ, ๋ด ํ๋กํ QR ์ฝ๋ ๋ฐ๊ธ
- ํ๋ํ ๋ฑ์ง ํ์ธ ๋ฐ ๋ํ ๋ฑ์ง ์ค์ ๊ฐ๋ฅ
- ๊ฐ์ธ ํต๊ณ ์ด๋
- ์ ์ ๋ค์ด ์ฌ๋ฆฐ ์ฌ์ง๋ค์ ๋ณด๊ณ ์ธ์ฆ์ฌ๋ถ๋ฅผ ํ๋จ
- ํ ์คํธ๋ฅผ ์ํด ๊ด๋ฆฌ์ ๊ถํ ์ธ์ฆ์ ์ ๊ฑฐ ํด๋ ์ํ์ ๋๋ค, user๊ถํ์ผ๋ก๋ ํ ์คํธ ํด๋ณผ ์ ์์ต๋๋ค
FE/BE: Next.js (with React + TypeScript)
UI Library: Chakra UI
Image Storage: Firebase
Database: MySQL
ORM: Prisma
Deploy: Vercel
Design: Figma
- React ๊ธฐ๋ฐ์ ํ์คํ ์น ํ๋ ์์ํฌ์ธ Next.js ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ์ฌ์ด๋ ๋ ๋๋ง(SSR) ์ ์ฉ
- SSR์ ๊ธฐ๋ฐ์ผ๋ก Server-side data fetching, image optimization, API Router ๋ฑ์ ๊ธฐ์ ์ ์ ์ฉ
- Auth.js ํ์ฉํ์ฌ ์ธ์ ๊ธฐ๋ฐ์ ๋ก๊ทธ์ธ ๊ตฌํ
- Chakra UI๋ฅผ ํ์ฉํ ๋์์ธ ์์คํ ๊ตฌ์ถ, ์ง์ ๋์์ธํ ์ปค์คํ SVG ์์ด์ฝ์ ์ ์ฉ
- ๋ฉ์ธ ํ์ด์ง ์๋จ ๋ฐฐ๋๊ด๊ณ ํ์ฑํ
- ๊ด๋ฆฌ์ ํ์ด์ง ์ฒด๊ณํ
- ์ถ์ ๋ ์์ฅ์ธก๊ณผ ํ์ํ์ฌ ๋ค์ํ ๋ฏธ์ ์ ๋์ ์งํ
- ์ง์์ ์ธ ๋ฑ์ง ๋ฐ ๋ฏธ์ ์ ๋ฐ์ดํธ