38980-vm/app-9w9pd00g5j41/DEVELOPER_QUICK_REFERENCE.md
2026-03-04 18:25:09 +00:00

229 lines
5.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# LetsGoCappadocia - Geliştirici Hızlı Referans
## 🎯 Platform Özeti
**LetsGoCappadocia**, Kapadokya destinasyonuna özel bir seyahat planlama platformudur.
## 🔑 Temel Özellikler
### 1. Sabit Destinasyon
```typescript
// Destinasyon her zaman Kapadokya'dır
const FIXED_DESTINATION = 'Kapadokya, Türkiye';
const FIXED_COORDINATES = {
lat: 38.6431,
lng: 34.8289
};
```
### 2. Kapadokya Kuralları
**Dosya:** `src/config/cappadocia-rules.ts`
```typescript
// Balon uçuşu kuralları
TRIP_RULES.balloon = {
max_per_trip: 1, // Seyahat başına 1 kez
time_block: 'sunrise', // Sadece gün doğumunda
preferred_day: 2 // Tercihen 2. gün
}
// Otel kuralları
TRIP_RULES.hotel = {
max_per_trip: 1, // Tek otel
role: 'base_location', // Başlangıç noktası
show_in_timeline: false // Timeline'da gösterilmez
}
// Günlük limitler
DAY_RULES = {
max_places: 5, // Günde max 5 yer
min_places: 3, // Günde min 3 yer
time_blocks: ['morning', 'afternoon', 'evening'],
min_gap_minutes: 30 // Yerler arası min 30 dk
}
```
## 📁 Değiştirilen Dosyalar
### 1. Marka Referansları
```bash
# HTML başlık
index.html
→ <title>LetsGoCappadocia - Kapadokya Seyahat Planlama</title>
# Footer
src/components/common/Footer.tsx
→ © 2026 LetsGoCappadocia. Tüm hakları saklıdır.
# Ana sayfa
src/pages/Home.tsx
→ Hero: "Kapadokya seyahatinizi mükemmel şekilde planlayın"
→ Testimonials: "Binlerce gezgin LetsGoCappadocia kullanarak..."
# İşletme paneli
src/pages/business/BusinessDashboard.tsx
"LetsGoCappadocia'da işletmenizi tanıtarak..."
src/pages/business/BusinessRegister.tsx
"LetsGoCappadocia'ya katılın..."
```
### 2. Destinasyon Kilidi
```tsx
// src/pages/CreateTrip.tsx
<Input
id="destination"
value="Kapadokya, Türkiye"
className="pl-10 h-12 bg-muted cursor-not-allowed"
disabled
readOnly
/>
```
## 🛠️ Geliştirme Komutları
```bash
# Projeyi çalıştır
npm run dev
# Lint kontrolü
npm run lint
# Build
npm run build
# Test
npm run test
```
## 📋 Yeni Özellik Eklerken Dikkat Edilecekler
### 1. Destinasyon Kontrolü
```typescript
// ❌ YANLIŞ - Kullanıcıdan destinasyon alma
const destination = userInput.destination;
// ✅ DOĞRU - Sabit destinasyon kullan
const destination = 'Kapadokya, Türkiye';
```
### 2. Yer Ekleme Kuralları
```typescript
// Balon uçuşu eklerken
if (placeType === 'hot_air_balloon') {
// Trip'te zaten balon var mı kontrol et
if (tripHasBalloon) {
throw new Error('Seyahatte zaten balon uçuşu var');
}
// Sadece 2. güne ekle (veya 1 günlük seyahatte 1. güne)
if (dayIndex !== 1 && totalDays > 1) {
throw new Error('Balon uçuşu sadece 2. güne eklenebilir');
}
}
// Günlük yer limiti kontrolü
if (dayPlaces.length >= DAY_RULES.max_places) {
throw new Error(`Günde maksimum ${DAY_RULES.max_places} yer eklenebilir`);
}
```
### 3. Marka Tutarlılığı
```typescript
// ❌ YANLIŞ
const appName = 'Wanderlog';
// ✅ DOĞRU
const appName = 'LetsGoCappadocia';
```
## 🎨 UI/UX Kuralları
### 1. Destinasyon Alanı
- Her zaman `disabled` ve `readOnly`
- Arka plan: `bg-muted` (gri)
- İmleç: `cursor-not-allowed`
- Bilgilendirme mesajı göster
### 2. Kapadokya Teması
- Kapadokya görselleri kullan
- Peribacaları, balon, kaya kiliseleri vb.
- Renk paleti: Toprak tonları, turuncu, kırmızı
### 3. İçerik Tonu
- Kapadokya odaklı
- Yerel deneyimler vurgusu
- "Keşfet", "Deneyimle", "Yaşa" gibi kelimeler
## 🔍 Hata Ayıklama
### Destinasyon Değişmiyor
```typescript
// CreateTrip.tsx'te kontrol et
const destination = 'Kapadokya, Türkiye'; // Sabit olmalı
// Input disabled mi?
<Input disabled readOnly value="Kapadokya, Türkiye" />
```
### Balon Uçuşu Eklenemiyor
```typescript
// cappadocia-rules.ts'yi kontrol et
console.log(TRIP_RULES.balloon.max_per_trip); // 1 olmalı
console.log(tripHasBalloon); // false olmalı
// Gün kontrolü
console.log(dayIndex); // 1 olmalı (2. gün)
```
### Günde 5'ten Fazla Yer Ekleniyor
```typescript
// DAY_RULES kontrolü
console.log(DAY_RULES.max_places); // 5 olmalı
console.log(dayPlaces.length); // 5'ten az olmalı
```
## 📚 İlgili Dosyalar
### Konfigürasyon
- `src/config/cappadocia-rules.ts` - Kapadokya kuralları
- `src/types/index.ts` - TypeScript tipleri
### Sayfalar
- `src/pages/CreateTrip.tsx` - Seyahat oluşturma
- `src/pages/Home.tsx` - Ana sayfa
- `src/pages/TripPlanner.tsx` - Seyahat planlayıcı
### Bileşenler
- `src/components/common/Footer.tsx` - Footer
- `src/components/common/Header.tsx` - Header
### API
- `src/db/api.ts` - Supabase API fonksiyonları
## 🚀 Deployment Kontrol Listesi
- [ ] Tüm "Wanderlog" referansları "LetsGoCappadocia" ile değiştirildi
- [ ] Destinasyon "Kapadokya, Türkiye" olarak sabitlendi
- [ ] Kapadokya kuralları aktif
- [ ] Görseller Kapadokya temalı
- [ ] Meta tags güncellendi
- [ ] SEO ayarları Kapadokya odaklı
- [ ] Lint hataları giderildi
- [ ] Build başarılı
- [ ] Test senaryoları geçti
## 📞 Destek
Sorularınız için:
- Dokümantasyon: `docs/prd.md`
- Değişiklik özeti: `BRAND_TRANSFORMATION_SUMMARY.md`
- Kontrol listesi: `TRANSFORMATION_CHECKLIST.md`
- Karşılaştırma: `BEFORE_AFTER_BRAND_COMPARISON.md`
---
**Platform:** LetsGoCappadocia
**Versiyon:** 1.0.0
**Tarih:** 2026-02-10
**Durum:** ✅ Aktif