Skip to content

Latest commit

Β 

History

History
121 lines (95 loc) Β· 3.89 KB

File metadata and controls

121 lines (95 loc) Β· 3.89 KB

Tripick Banner

Tripick 🌿

ν…Œλ§ˆ 기반 κ΅­λ‚΄ μ—¬ν–‰μ§€ νλ ˆμ΄μ…˜ μ„œλΉ„μŠ€

힐링, λ§›μ§‘, μ•Όκ²½ λ“± μ›ν•˜λŠ” μ—¬ν–‰ ν…Œλ§ˆλ₯Ό μ„ νƒν•˜λ©΄ λ”± λ§žλŠ” μ—¬ν–‰μ§€λ₯Ό μΆ”μ²œν•΄λ“œλ €μš”.


기술 μŠ€νƒ

ꡬ뢄 기술
Framework Next.js 16, React 19
Language TypeScript
Styling Tailwind CSS v4
Backend / DB Supabase (Auth, Database)
AI Google Generative AI (Gemini)
Map Kakao Maps API
Deploy Vercel

μ£Όμš” κΈ°λŠ₯

πŸ—Ί μ—¬ν–‰μ§€ 탐색

  • ν…Œλ§ˆ μΉ΄λ“œ(힐링, μ•‘ν‹°λΉ„ν‹°, 감성 카페, λ§›μ§‘, μ•Όκ²½ λ“±)둜 μ—¬ν–‰ μŠ€νƒ€μΌ 선택
  • μ§€μ—­Β·νƒœκ·ΈΒ·μ •λ ¬ κΈ°μ€€(ν‰μ μˆœ, 리뷰 λ§Žμ€ 순)으둜 μ—¬ν–‰μ§€ 필터링
  • μ—¬ν–‰μ§€ 상세 νŽ˜μ΄μ§€μ—μ„œ 카카였맡 μœ„μΉ˜ 확인 및 리뷰 쑰회

❀️ μœ„μ‹œλ¦¬μŠ€νŠΈ

  • λ§ˆμŒμ— λ“œλŠ” μ—¬ν–‰μ§€λ₯Ό 즐겨찾기에 μΆ”κ°€/제거
  • λ§ˆμ΄νŽ˜μ΄μ§€μ—μ„œ λ‚΄ μœ„μ‹œλ¦¬μŠ€νŠΈ ν•œλˆˆμ— 확인

πŸ—“ μ—¬ν–‰ ν”Œλž˜λ„ˆ

  • λ‚˜λ§Œμ˜ ν”Œλžœ μƒμ„±Β·μˆ˜μ •Β·μ‚­μ œ
  • ν”Œλžœμ— μ—¬ν–‰μ§€ μΆ”κ°€/제거
  • μ„ νƒν•œ μž₯μ†Œλ“€μ„ 카카였맡으둜 ν•œ λ²ˆμ— 확인

πŸ€– AI μ—¬ν–‰ μΆ”μ²œ μ±„νŒ…

  • μ‚¬μ΄λ“œλ°” ν”Œλ‘œνŒ… λ²„νŠΌμœΌλ‘œ μ–Έμ œλ“  AIμ—κ²Œ 질문
  • μ—¬ν–‰μ§€Β·μˆ™μ†ŒΒ·κΏ€νŒ λ“± 자유둭게 μΆ”μ²œ μš”μ²­
  • μ—¬ν–‰μ§€ μƒμ„Έμ—μ„œ μž₯μ†Œμ— λ§žλŠ” 맞좀 질문 μžλ™ μ œμ•ˆ

πŸ‘€ νšŒμ› κΈ°λŠ₯

  • 이메일/λΉ„λ°€λ²ˆν˜Έ νšŒμ›κ°€μž… 및 둜그인
  • λ‹‰λ„€μž„ λ³€κ²½
  • λΉ„λ°€λ²ˆν˜Έ μž¬μ„€μ • 메일 λ°œμ†‘
  • νšŒμ› νƒˆν‡΄

ν”„λ‘œμ νŠΈ ꡬ쑰

src/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ (auth)/           # λ‘œκ·ΈμΈΒ·νšŒμ›κ°€μž… νŽ˜μ΄μ§€
β”‚   β”œβ”€β”€ auth/             # Supabase 콜백, νšŒμ›νƒˆν‡΄ API
β”‚   └── api/              # API 
β”‚   └── main/
β”‚       β”œβ”€β”€ page.tsx      # ν™ˆ (ν…Œλ§ˆ 선택)
β”‚       β”œβ”€β”€ subpage/      # μ—¬ν–‰μ§€ λͺ©λ‘Β·ν•„ν„°
β”‚       β”œβ”€β”€ detail/       # μ—¬ν–‰μ§€ 상세 + 카카였맡
β”‚       β”œβ”€β”€ favorites/    # μœ„μ‹œλ¦¬μŠ€νŠΈ
β”‚       β”œβ”€β”€ planner/      # μ—¬ν–‰ ν”Œλž˜λ„ˆ
β”‚       └── mypage/       # λ§ˆμ΄νŽ˜μ΄μ§€
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ auth/             # MainAuthGate, 둜그인/νšŒμ›κ°€μž… 폼
β”‚   β”œβ”€β”€ layout/           # Sidebar, Header
β”‚   β”œβ”€β”€ ai/               # AI μ±„νŒ… λͺ¨λ‹¬
β”‚   β”œβ”€β”€ home/             # ν…Œλ§ˆ μΉ΄λ“œ κ·Έλ¦¬λ“œ
β”‚   β”œβ”€β”€ subpage/          # μ—¬ν–‰μ§€ λͺ©λ‘ μ»΄ν¬λ„ŒνŠΈ
β”‚   └── detail_review/    # 리뷰 μ»΄ν¬λ„ŒνŠΈ
└── lib/
    β”œβ”€β”€ supabase/         # Supabase ν΄λΌμ΄μ–ΈνŠΈ (server/client 뢄리)
    └── api/              # API 라우트

μ‹œμž‘ν•˜κΈ°

ν™˜κ²½ λ³€μˆ˜ μ„€μ •

ν”„λ‘œμ νŠΈ λ£¨νŠΈμ— .env.local νŒŒμΌμ„ μƒμ„±ν•˜κ³  μ•„λž˜ 값을 μ±„μ›Œμ£Όμ„Έμš”.

NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
SUPABASE_SERVICE_ROLE_KEY=your_service_role_key
NEXT_PUBLIC_KAKAO_MAP_API_KEY=your_kakao_map_api_key
GEMINI_API_KEY=your_gemini_api_key

μ„€μΉ˜ 및 μ‹€ν–‰

# νŒ¨ν‚€μ§€ μ„€μΉ˜
npm install

# 개발 μ„œλ²„ μ‹€ν–‰
npm run dev

http://localhost:3000 μ—μ„œ 확인할 수 μžˆμ–΄μš”.

# λΉŒλ“œ
npm run build

νŒ€μ›

이름 μ—­ν• 
μ •μ—°μˆ˜ μ„œλΈŒ νŽ˜μ΄μ§€ (νƒœκ·Έ 검색 κ²°κ³Ό, 상세 νŽ˜μ΄μ§€ 이동) / λ§ˆμ΄νŽ˜μ΄μ§€ (λ‚΄κ°€ μž‘μ„±ν•œ 리뷰) / λ°μ΄ν„°λ² μ΄μŠ€ 섀계 (ERD)
κΉ€λ½ν˜„ μ—¬ν–‰ ν”Œλž˜λ„ˆ (DB 연동, νšŒμ›λ³„) / 상세 νŽ˜μ΄μ§€ (μž₯μ†Œ 이미지 및 μ„€λͺ…(Naver, Unsplash API))
κΉ€ν˜„μŠΉ AI μΆ”μ²œ (Gemini API) / 상세 νŽ˜μ΄μ§€ (지도, 리뷰 μž‘μ„±Β·μ‚­μ œ) (Kakao Map API)
μ†‘λ―Όν˜ 메인 νŽ˜μ΄μ§€ (νƒœκ·Έ 선택, 검색, 즐겨찾기) / λ©”μΈνŽ˜μ΄μ§€ μ„œλΈŒνŽ˜μ΄μ§€ 연동 / μ „λ°˜μ μΈ UIκ΅¬ν˜„
μ •λ―Όν˜ νšŒμ›κ°€μž…, 둜그인, λ‘œκ·Έμ•„μ›ƒ (Supabase, Google, Kakao) / λ§ˆμ΄νŽ˜μ΄μ§€ UI 및 κΈ°λŠ₯ κ΅¬ν˜„ / Vercel 배포