61 lines
2.9 KiB
Markdown
61 lines
2.9 KiB
Markdown
BÖLÜM 1: Ürün Gereksinim Dokümanı (PRD)
|
||
1. Proje Vizyonu
|
||
Kullanıcının siteye girdiği an Bodrum'un turkuaz sularını ve beyaz mimarisini hissedeceği, "nefes alan", ultra hızlı ve güvenli bir dijital Resort deneyimi.
|
||
|
||
2. Sayfa Yapısı ve Akış (Fresh Design)
|
||
A. Global Elements (Tüm Sayfalar)
|
||
Navbar: Şeffaf (Glassmorphism), üzerine gelince hafifçe beyazlaşan. Logo sol, menü orta, sağ tarafta dil seçici (TR|EN|DE) ve "Rezervasyon Yap" butonu.
|
||
|
||
Floating Booking Bar: Sayfanın en altında sabit duran, mobil uyumlu, tarih ve kişi seçip dış linke atan minimal bar.
|
||
|
||
B. Landing Page (Giriş)
|
||
Immersive Hero: Ekranı kaplayan, Cloudinary'den optimize edilmiş, ağır çekim deniz ve sahil videosu. Üzerinde sadece: "Ege'nin Kalbinde Mükemmel Bir Kaçış" (The Perfect Escape in the Heart of the Aegean).
|
||
|
||
Experience Grid: Dört ana bölümün (Rooms, Dining, Spa, Beach) büyük, kare, hafif yuvarlak köşeli kartlar halinde sunumu. Resimlerin üzerine gelince turkuaz bir filtre ve "Keşfet" yazısı belirir.
|
||
|
||
The Legend (Salmakis Efsanesi): Sayfanın ortasında, bol beyaz boşlukla (whitespaces) çevrili, hikayeyi anlatan sanatsal bir metin bloğu.
|
||
|
||
Official Website Badge: Sahte sitelere karşı uyarıyı, "Salmakis Resort & Spa Resmi Web Sitesi Güvencesi" başlığıyla, sayfanın altına şık bir mühür veya ikon olarak ekleyerek güven veriyoruz.
|
||
|
||
C. Accommodation (Konaklama)
|
||
Rooms List: Odaların yan yana dikey (portrait) kartlar halinde listelenmesi (Eski sitenin yatay kutu yapısı yerine).
|
||
|
||
Oda Özellikleri: .ts dosyasından çekilen ikonik özellikler (WiFi, Manzara, Balkon, Safe).
|
||
|
||
D. SPA Center
|
||
Fresh vibe'a uygun, aydınlık, beyaz mermer ve masaj deneyimi odaklı devasa fotoğraflar.
|
||
|
||
3. Teknik Mimari (TypeScript & Cloudinary)
|
||
Cloudinary Optimize: Sitedeki tüm görseller .jpg olarak yüklenecek ama URL'lerine f_auto,q_auto,w_auto parametreleri Next.js Image bileşeni veya bir helper fonksiyonu ile eklenecek.
|
||
|
||
Data Structure (src/data/resort.ts): SQL yerine veri bu dosyada tutulacak.
|
||
|
||
TypeScript
|
||
// src/data/resort.ts
|
||
export interface Room {
|
||
slug: string;
|
||
name: { tr: string; en: string; de: string };
|
||
description: { tr: string; en: string; de: string };
|
||
features: string[]; // ['sea_view', 'balcony', 'minibar']
|
||
// Sadece Cloudinary Public ID'si tutulacak (Format ve optimizasyon URL'de yapılacak)
|
||
mainImageId: string; // 'resort/rooms/standard_sea_view_main'
|
||
}
|
||
|
||
export const resortData = {
|
||
// Global Güvenlik Notu
|
||
securityBadge: {
|
||
tr: "Resmi Web Sitesi Güvencesi",
|
||
en: "Official Website Protection",
|
||
de: "Offizieller Website-Schutz"
|
||
},
|
||
rooms: [
|
||
{
|
||
slug: "deluxe-room",
|
||
name: { tr: "Deluxe Oda", en: "Deluxe Room", de: "Deluxe Zimmer" },
|
||
description: { tr: "Maviye uyanmanın en şık yolu...", en: "Meeting comfort and elegance." },
|
||
features: ["WiFi", "TV", "Safe Box"],
|
||
mainImageId: "salmakis/rooms/deluxe_room_1"
|
||
},
|
||
// Diğer odalar...
|
||
]
|
||
} |