βλꡬλͺ¨μβλ μλ―Όλ€μκ² μ΄λ²€νΈμ κ΄λ ¨λ μ 보μ λ―Έμ μ μ κ³΅ν΄ μλ―Όλ€μ μ΄λ²€νΈ μ°Έμ¬λ₯Ό μ΄κ΅¬νλ μ±μΉμ λλ€. βλꡬλͺ¨μβλ μλ―Όλ€μ΄ λꡬμμ νλνλ κ²λ€μ κΈ°λ‘νλ©° μ΄μ λν 보μμ μ 곡ν©λλ€.
- 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 μμ΄μ½μ μ μ©
- λ©μΈ νμ΄μ§ μλ¨ λ°°λκ΄κ³ νμ±ν
- κ΄λ¦¬μ νμ΄μ§ 체κ³ν
- μΆμ λ μμ₯μΈ‘κ³Ό νμνμ¬ λ€μν λ―Έμ μ λμ μ§ν
- μ§μμ μΈ λ±μ§ λ° λ―Έμ μ λ°μ΄νΈ







