- );
-}
diff --git a/dictionaries/en.json b/dictionaries/en.json
new file mode 100644
index 0000000..b37786b
--- /dev/null
+++ b/dictionaries/en.json
@@ -0,0 +1,185 @@
+{
+ "navigation": {
+ "home": "Home",
+ "corporate": "Corporate",
+ "venues": "Venues",
+ "gallery": "Gallery",
+ "contact": "Contact"
+ },
+ "footer": {
+ "description": "Blending the unique beauties of the Aegean in Akyaka, Akçapınar, and Datça, we offer unforgettable holiday experiences with a nature-respectful and innovative approach.",
+ "quickLinks": "Quick Links",
+ "about": "About Us",
+ "ourVenues": "Our Venues",
+ "menus": "Menus",
+ "contactInfo": "Contact Info",
+ "rights": "All Rights Reserved."
+ },
+ "home": {
+ "hero": {
+ "eyebrow": "IN THE HEART OF THE AEGEAN",
+ "title": "Your Gateway to Unforgettable Moments",
+ "subtitle": "Experience the unique harmony of gastronomy, accommodation, and nature sports with the privilege of Moy Group.",
+ "cta": "Contact Us",
+ "btn1": "Make a Reservation",
+ "btn2": "Explore Venues",
+ "scroll": "Explore"
+ },
+ "stats": {
+ "years": "Years of Experience",
+ "venues": "Exclusive Venues",
+ "guests": "Happy Guests"
+ },
+ "venues": {
+ "eyebrow": "Our Locations",
+ "title": "Explore Our Venues",
+ "subtitle": "It is very easy to reach our venues in the heart of the Aegean. Let us prepare the best route for you.",
+ "viewMap": "View on Map"
+ },
+ "venuesList": [
+ {
+ "id": "moy-beach",
+ "title": "Moy Beach",
+ "tag": "Beach & Bar",
+ "desc": "An exclusive beach and gastronomy experience amidst the unique nature and azure waters of Akyaka. The point where local aromas meet international flavors.",
+ "img": "/moy-beach.jpg",
+ "color": "from-amber-900/60"
+ },
+ {
+ "id": "kite-beach-hotel",
+ "title": "Kite Beach Hotel",
+ "tag": "Hotel",
+ "desc": "A boutique hotel right on the clear waters of Akyaka, offering the perfect balance of both sports and relaxation. Swim in the sea in the mornings, enjoy the restaurant in the evenings.",
+ "img": "/kite-beach-hotel.jpg",
+ "color": "from-blue-900/60"
+ },
+ {
+ "id": "volkswagen-kite",
+ "title": "Volkswagen Kite (Surfing)",
+ "tag": "Kite & Surf",
+ "desc": "Professional training and equipment rental at Akçapınar Kite Beach, Turkey's best kitesurf spot. Discover freedom in the diamond waters of the Gulf of Gökova.",
+ "img": "/volkswagen-kite.png",
+ "color": "from-green-900/60"
+ }
+ ],
+ "locationsMap": [
+ {
+ "place": "Moy Beach",
+ "addr": "Atatürk 1. Cd No:86, Akyaka, Ula/Muğla",
+ "embed": "https://maps.google.com/maps?q=Moy+Beach+Akyaka&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ },
+ {
+ "place": "Kite Beach Hotel",
+ "addr": "Akçapınar Sok. Kiteboard Sahili, Muğla",
+ "embed": "https://maps.google.com/maps?q=Kite+Beach+Hotel+Muğla&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ },
+ {
+ "place": "Volkswagen Kite (Surfing)",
+ "addr": "Akçapınar Kite Sahili, Ula/Muğla",
+ "embed": "https://maps.google.com/maps?q=Volkswagen+Kite+Surfing+Muğla&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ }
+ ],
+ "cta": {
+ "eyebrow": "The Aegean is Waiting for You",
+ "title1": "Unforgettable Moments",
+ "title2": "Are Waiting for You",
+ "subtitle": "Make your reservation, we'll take care of the rest. Contact us for personalized packages.",
+ "btn1": "Make a Reservation",
+ "btn2": "Contact Us",
+ "exploreBtn": "Explore in Detail"
+ }
+ },
+ "corporate": {
+ "title": "About Us",
+ "p1": "With years of experience in the tourism sector, we offer our restaurant, bungalow, and beach services with an environmentally friendly, sustainable, and modern approach.",
+ "p2": "In our restaurants, we present the most delicious and fresh products of local Aegean cuisine with unique presentations, promising an unforgettable journey of taste. In our bungalows intertwined with nature, we provide peaceful, comfortable, and high-quality accommodation experiences; aiming for our guests to get away from the chaos of the city and feel the tranquility of nature.",
+ "p3": "In our beach businesses, we consider all the details for you to spend pleasant moments in the turquoise waters of the Aegean. With our professional, smiling, and sincere team, maximizing guest satisfaction and making every moment special is our primary goal.",
+ "p4": "Acting with an environmentally conscious and sustainable understanding, we are proud to contribute to regional tourism and local development. We invite you to collect unforgettable memories with us in the unique beauties of the Aegean.",
+ "vision": "Our Vision",
+ "visionText": "By blending the unique beauties of the Aegean in Datça, Akyaka, and Akçapınar; to be the leading brand of the tourism sector in Turkey by offering unforgettable holiday experiences to our guests with a nature-respectful, sustainable, and innovative approach.",
+ "mission": "Our Mission",
+ "missionText": "Combining our local values with a modern service understanding; to offer high-quality restaurant, accommodation, and beach services that appeal to our guests' taste, comfort, and peace; while doing this, contributing to the development of regional tourism with our environmentally friendly, sincere, and professional service understanding."
+ },
+ "contact": {
+ "eyebrow": "Contact",
+ "title": "Get in Touch",
+ "subtitle": "For reservations, information, or cooperation, you can directly call our venues or fill out the form.",
+ "formEyebrow": "Send a Message",
+ "formTitle": "How can we help?",
+ "name": "Full Name",
+ "namePlaceholder": "Your Name",
+ "email": "Email",
+ "emailPlaceholder": "email@example.com",
+ "phone": "Phone (Optional)",
+ "phonePlaceholder": "+90 5xx xxx xx xx",
+ "subject": "Subject",
+ "subjectOptions": [
+ "Select...",
+ "Reservation Request",
+ "Kitesurf Lessons",
+ "Corporate Event",
+ "General Info"
+ ],
+ "message": "Your Message",
+ "messagePlaceholder": "How can we help you?",
+ "send": "Send",
+ "generalContact": "General Contact",
+ "phoneText": "Phone",
+ "emailText": "Email",
+ "hours": "Working Hours",
+ "monFri": "Monday – Friday",
+ "sat": "Saturday",
+ "sun": "Sunday",
+ "hoursNote": "* Season hours may vary.",
+ "social": "Social Media"
+ },
+ "gallery": {
+ "eyebrow": "Memories",
+ "title": "Moy Group Gallery",
+ "subtitle": "From the warm sun to the cool waters of the Aegean, frames from our venues.",
+ "all": "All",
+ "venues": "Venues",
+ "food": "Food",
+ "activity": "Activity"
+ },
+ "faq": {
+ "eyebrow": "FAQ",
+ "title": "Frequently Asked Questions",
+ "subtitle": "Find quick answers to the questions in your mind. If you can't find it, write to us directly.",
+ "categories": {
+ "accommodation": "Accommodation",
+ "kitesurf": "Kite Surf",
+ "reservation": "Reservation & Cancellation"
+ },
+ "q1": "Do you accept pets?",
+ "a1": "We are happy to welcome your pet friends in our bungalow facility and designated areas of our beaches. Please inform us during reservation.",
+ "q2": "What are the Check-in / Check-out times?",
+ "a2": "Check-in is at 14:00, check-out is at 12:00. Extra charges may apply for early check-in or late check-out — subject to availability.",
+ "q3": "Is breakfast included?",
+ "a3": "At Kite Beach Hotel, there are packages including breakfast depending on the room type. Bungalow accommodations offer their own kitchen facilities.",
+ "q4": "Do I need to bring equipment for kitesurf training?",
+ "a4": "No, all up-to-date equipment you need from beginner to advanced level is provided by our center.",
+ "q5": "Is it necessary to know how to swim to learn kitesurf?",
+ "a5": "Yes, basic swimming knowledge is mandatory. All our students wear life jackets during the training.",
+ "q6": "In which months are kitesurf lessons given?",
+ "a6": "Lessons are given during the active season between April and October. The most suitable wind conditions are in June-September.",
+ "q7": "What is your cancellation policy?",
+ "a7": "Full refund is made for cancellations up to 14 days before the check-in date. 50% between 7-14 days, and no refund for less than 7 days.",
+ "q8": "Is prepayment required for reservation?",
+ "a8": "30% of the total amount is taken as prepayment. The balance is charged on the check-in date.",
+ "q9": "Is there a special price for group reservations?",
+ "a9": "Special pricing is applied for group reservations of 10 people or more. Contact us for details."
+ },
+ "menu": {
+ "eyebrow": "Menu",
+ "title": "Digital Menu",
+ "subtitle": "Fresh flavors of the Aegean, signature dishes prepared with local products, and our special beverage selection.",
+ "sectionTitle": "Seasonal & Local",
+ "sectionSubtitle": "The vast majority of our ingredients are supplied fresh from regional producers.",
+ "starters": "Starters",
+ "mains": "Main Courses",
+ "desserts": "Desserts",
+ "drinks": "Drinks",
+ "note": "Prices include VAT. The menu is subject to change. If you have any allergies, please inform our service team."
+ }
+}
\ No newline at end of file
diff --git a/dictionaries/tr.json b/dictionaries/tr.json
new file mode 100644
index 0000000..99b1500
--- /dev/null
+++ b/dictionaries/tr.json
@@ -0,0 +1,185 @@
+{
+ "navigation": {
+ "home": "Ana Sayfa",
+ "corporate": "Kurumsal",
+ "venues": "Mekanlar",
+ "gallery": "Galeri",
+ "contact": "İletişim"
+ },
+ "footer": {
+ "description": "Ege'nin eşsiz güzelliklerini Akyaka, Akçapınar ve Datça'da harmanlayarak, doğaya saygılı ve yenilikçi bir yaklaşımla unutulmaz tatil deneyimleri sunuyoruz.",
+ "quickLinks": "Hızlı Bağlantılar",
+ "about": "Hakkımızda",
+ "ourVenues": "Mekanlarımız",
+ "menus": "Menüler",
+ "contactInfo": "İletişim",
+ "rights": "Tüm Hakları Saklıdır."
+ },
+ "home": {
+ "hero": {
+ "eyebrow": "EGE'NİN KALBİNDE",
+ "title": "Unutulmaz Anlara Açılan Kapınız",
+ "subtitle": "Gastronomi, konaklama ve doğa sporlarının eşsiz uyumunu Moy Grup ayrıcalığıyla deneyimleyin.",
+ "cta": "Bizimle İletişime Geçin",
+ "btn1": "Rezervasyon Yap",
+ "btn2": "Mekanları Keşfet",
+ "scroll": "Keşfet"
+ },
+ "stats": {
+ "years": "Yıllık Tecrübe",
+ "venues": "Özel Mekan",
+ "guests": "Mutlu Misafir"
+ },
+ "venues": {
+ "eyebrow": "Lokasyonlarımız",
+ "title": "Mekanlarımızı Keşfedin",
+ "subtitle": "Ege'nin kalbindeki mekanlarımıza ulaşmak çok kolay. Sizin için en uygun rotayı hazırlayalım.",
+ "viewMap": "Haritada Gör"
+ },
+ "venuesList": [
+ {
+ "id": "moy-beach",
+ "title": "Moy Beach",
+ "tag": "Beach & Bar",
+ "desc": "Akyaka'nın eşsiz doğası ve masmavi suları arasında, seçkin bir plaj ve gastronomi deneyimi. Yerel aromalar ile uluslararası lezzetlerin buluştuğu nokta.",
+ "img": "/moy-beach.jpg",
+ "color": "from-amber-900/60"
+ },
+ {
+ "id": "kite-beach-hotel",
+ "title": "Kite Beach Hotel",
+ "tag": "Hotel",
+ "desc": "Akyaka'nın berrak sularına sıfır, hem sporun hem de dinlenmenin mükemmel dengesini sunan butik otel. Sabahları denizde yüzün, akşamları restoranda keyif yapın.",
+ "img": "/kite-beach-hotel.jpg",
+ "color": "from-blue-900/60"
+ },
+ {
+ "id": "volkswagen-kite",
+ "title": "Volkswagen Kite (Surfing)",
+ "tag": "Kite & Surf",
+ "desc": "Akçapınar Kite Sahili'nde, Türkiye'nin en iyi kitesurf noktasında profesyonel eğitim ve ekipman kiralama. Gökova Körfezi'nin pırlanta sularında özgürlüğü keşfedin.",
+ "img": "/volkswagen-kite.png",
+ "color": "from-green-900/60"
+ }
+ ],
+ "locationsMap": [
+ {
+ "place": "Moy Beach",
+ "addr": "Atatürk 1. Cd No:86, Akyaka, Ula/Muğla",
+ "embed": "https://maps.google.com/maps?q=Moy+Beach+Akyaka&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ },
+ {
+ "place": "Kite Beach Hotel",
+ "addr": "Akçapınar Sok. Kiteboard Sahili, Muğla",
+ "embed": "https://maps.google.com/maps?q=Kite+Beach+Hotel+Muğla&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ },
+ {
+ "place": "Volkswagen Kite (Surfing)",
+ "addr": "Akçapınar Kite Sahili, Ula/Muğla",
+ "embed": "https://maps.google.com/maps?q=Volkswagen+Kite+Surfing+Muğla&t=&z=15&ie=UTF8&iwloc=&output=embed"
+ }
+ ],
+ "cta": {
+ "eyebrow": "Ege Sizi Bekliyor",
+ "title1": "Unutulmaz Anlar",
+ "title2": "Sizi Bekliyor",
+ "subtitle": "Rezervasyonunuzu yapın, gerisini biz düşünelim. Kişiye özel paketlerimiz için bize ulaşın.",
+ "btn1": "Rezervasyon Yap",
+ "btn2": "Bize Ulaşın",
+ "exploreBtn": "Detaylı İncele"
+ }
+ },
+ "corporate": {
+ "title": "Hakkımızda",
+ "p1": "Turizm sektöründe uzun yıllara dayanan tecrübemizle restoran, bungalov ve beach hizmetlerimizi doğaya saygılı, sürdürülebilir ve modern bir yaklaşımla sunuyoruz.",
+ "p2": "Restoranlarımızda yerel Ege mutfağının en lezzetli ve taze ürünlerini, özgün sunumlarla misafirlerimizin beğenisine sunarak damak zevkine unutulmaz bir yolculuk vaat ediyoruz. Doğayla iç içe olan bungalovlarımızda huzurlu, konforlu ve kaliteli konaklama deneyimleri sağlıyor; misafirlerimizin şehrin karmaşasından uzaklaşıp doğanın huzurunu hissetmesini amaçlıyoruz.",
+ "p3": "Beach işletmelerimizde ise Ege’nin turkuaz sularında keyifli anlar geçirmeniz için tüm ayrıntıları düşünüyoruz. Profesyonel, güler yüzlü ve samimi ekibimizle misafir memnuniyetini en üst düzeye çıkararak, her anınızı özel kılmak bizim öncelikli hedefimiz.",
+ "p4": "Çevreye duyarlı ve sürdürülebilir bir anlayışla hareket ederek, bölge turizmine ve yerel kalkınmaya katkı sağlamaktan gurur duyuyoruz. Sizleri, Ege’nin benzersiz güzelliklerinde, bizimle unutulmaz anılar biriktirmeye davet ediyoruz.",
+ "vision": "Vizyonumuz",
+ "visionText": "Ege’nin eşsiz güzelliklerini Datça, Akyaka ve Akçapınar'da harmanlayarak; doğaya saygılı, sürdürülebilir ve yenilikçi bir yaklaşımla misafirlerimize unutulmaz tatil deneyimleri sunarak Türkiye’de turizm sektörünün öncü markası olmak.",
+ "mission": "Misyonumuz",
+ "missionText": "Yerel değerlerimizi modern hizmet anlayışıyla birleştirerek; misafirlerimizin damak tadına, konforuna ve huzuruna hitap eden kaliteli restoran, konaklama ve beach hizmetleri sunmak; bunu yaparken çevreye duyarlı, samimi ve profesyonel hizmet anlayışımızla bölge turizminin gelişimine katkı sağlamak."
+ },
+ "contact": {
+ "eyebrow": "İletişim",
+ "title": "Bize Ulaşın",
+ "subtitle": "Rezervasyon, bilgi veya işbirliği için mekanlarımızı doğrudan arayabilir ya da formu doldurabilirsiniz.",
+ "formEyebrow": "Mesaj Gönderin",
+ "formTitle": "Nasıl Yardımcı Olalım?",
+ "name": "Adınız Soyadınız",
+ "namePlaceholder": "Adınız",
+ "email": "E-Posta",
+ "emailPlaceholder": "email@example.com",
+ "phone": "Telefon (Opsiyonel)",
+ "phonePlaceholder": "+90 5xx xxx xx xx",
+ "subject": "Konu",
+ "subjectOptions": [
+ "Seçiniz...",
+ "Rezervasyon Talebi",
+ "Kitesurf Dersleri",
+ "Kurumsal Etkinlik",
+ "Genel Bilgi"
+ ],
+ "message": "Mesajınız",
+ "messagePlaceholder": "Nasıl yardımcı olabiliriz?",
+ "send": "Gönder",
+ "generalContact": "Genel İletişim",
+ "phoneText": "Telefon",
+ "emailText": "E-Posta",
+ "hours": "Çalışma Saatleri",
+ "monFri": "Pazartesi – Cuma",
+ "sat": "Cumartesi",
+ "sun": "Pazar",
+ "hoursNote": "* Sezon saatleri değişiklik gösterebilir.",
+ "social": "Sosyal Medya"
+ },
+ "gallery": {
+ "eyebrow": "Anılar",
+ "title": "Moy Group Galerisi",
+ "subtitle": "Ege'nin sıcak güneşinden serin sularına, mekanlarımızdan kareler.",
+ "all": "Tümü",
+ "venues": "Mekanlar",
+ "food": "Yemek",
+ "activity": "Aktivite"
+ },
+ "faq": {
+ "eyebrow": "SSS",
+ "title": "Sık Sorulan Sorular",
+ "subtitle": "Aklınızdaki sorulara hızlıca yanıt bulun. Bulamadıysanız bize doğrudan yazın.",
+ "categories": {
+ "accommodation": "Konaklama",
+ "kitesurf": "Kite Surf",
+ "reservation": "Rezervasyon & İptal"
+ },
+ "q1": "Evcil hayvan kabul ediyor musunuz?",
+ "a1": "Bungalov tesisimizde ve plajlarımızın belirli alanlarında evcil dostlarınızı ağırlamaktan memnuniyet duyarız. Rezervasyon sırasında bilgi vermenizi rica ederiz.",
+ "q2": "Check-in / Check-out saatleri nelerdir?",
+ "a2": "Check-in saat 14:00, check-out ise saat 12:00'dir. Erken check-in veya geç check-out için ekstra ücret uygulanabilir — müsaitlik durumuna göre değerlendirilir.",
+ "q3": "Kahvaltı dahil mi?",
+ "a3": "Kite Beach Hotel'de oda türüne göre kahvaltı dahil paketler mevcuttur. Bungalov konaklamaları kendi mutfak imkânı sunmaktadır.",
+ "q4": "Kitesurf eğitimi için ekipman getirmem gerekiyor mu?",
+ "a4": "Hayır, başlangıçtan ileri seviyeye kadar ihtiyacınız olan tüm güncel ekipmanlar merkezimiz tarafından temin edilmektedir.",
+ "q5": "Kitesurf öğrenmek için yüzme bilmek şart mı?",
+ "a5": "Evet, temel düzeyde yüzme bilgisi zorunludur. Tüm öğrencilerimiz eğitim boyunca can yeleği giymektedir.",
+ "q6": "Hangi aylarda kitesurf dersi verilmektedir?",
+ "a6": "Nisan–Ekim ayları arasında aktif sezon boyunca ders verilmektedir. En uygun rüzgar koşulları Haziran–Eylül aylarındadır.",
+ "q7": "İptal politikanız nedir?",
+ "a7": "Giriş tarihine 14 gün kalana kadar yapılan iptallerde tam iade yapılmaktadır. 7–14 gün arasında %50, 7 günden kısa sürede ise iade yapılamamaktadır.",
+ "q8": "Rezervasyon için ön ödeme gerekiyor mu?",
+ "a8": "Toplam tutarın %30'u ön ödeme olarak alınmaktadır. Bakiye, giriş tarihinde tahsil edilir.",
+ "q9": "Grup rezervasyonu için özel fiyat var mı?",
+ "a9": "10 kişi ve üzeri grup rezervasyonlarında özel fiyatlandırma uygulanmaktadır. Detaylar için bize ulaşın."
+ },
+ "menu": {
+ "eyebrow": "Menü",
+ "title": "Dijital Menü",
+ "subtitle": "Ege'nin taze lezzetleri, yerel ürünlerle hazırlanan imza yemekler ve özel içecek seçkimiz.",
+ "sectionTitle": "Mevsimsel & Yerel",
+ "sectionSubtitle": "Malzemelerimizin büyük çoğunluğu bölgesel üreticilerden, taze temin edilmektedir.",
+ "starters": "Başlangıçlar",
+ "mains": "Ana Yemekler",
+ "desserts": "Tatlılar",
+ "drinks": "İçecekler",
+ "note": "Fiyatlara KDV dahildir. Menü değişiklik gösterebilir. Alerjiniz varsa lütfen servis ekibimizi bilgilendirin."
+ }
+}
\ No newline at end of file
diff --git a/docs/prd.md b/docs/prd.md
new file mode 100644
index 0000000..6a01e90
--- /dev/null
+++ b/docs/prd.md
@@ -0,0 +1,104 @@
+# Moy Group — Web Sitesi Yenileme Promptu
+
+## Proje Tanımı
+
+Moy Group, Ege'nin seçkin lokasyonlarında (Akyaka, Akçapınar, Datça, Alaçatı) faaliyet
+gösteren bir turizm grubudur. Bünyesinde restoran, beach bar, bungalov konaklama, hotel
+ve kitesurf merkezi hizmetleri sunulmaktadır.
+
+Mevcut web sitesi (moygroup.com.tr) temel bilgileri içermekle birlikte görsel çekicilik,
+kullanıcı deneyimi ve içerik derinliği açısından güncellenmesi gerekmektedir.
+
+---
+
+## Marka Kimliği & Tasarım Dili
+
+- **Renk Paleti:** Mevcut altın sarısı ton (#c9a96e) ve koyu arka plan kombinasyonu
+ korunabilir; buna Ege mavisi ve doğal yeşil tonları eklenerek zenginleştirilmeli.
+- **Yazı Tipi:** Lüks, okunaklı ve modern serif/sans-serif kombinasyonu
+ (örn. *Cormorant Garamond + Montserrat*).
+- **Genel His:** Doğa ile iç içe, premium tatil deneyimi; minimal ama sıcak ve davetkar.
+- **Logo:** Marka kimliği tutarlı biçimde tüm sayfalarda yer almalı.
+
+---
+
+## Ana Sayfa (Homepage) Yenileme
+
+- **Hero Bölümü:** Yüksek kaliteli, sinematik video veya parallax slider
+ (Ege denizi, plaj, bungalov, restoran görüntüleri).
+ Kısa ve etkileyici bir slogan (örn. *"Ege'nin Ruhunu Hisset."*).
+- **CTA Butonları:** "Rezervasyon Yap", "Mekanları Keşfet", "Bize Ulaşın".
+- **Hizmetler Bölümü:** Restaurant, Beach, Bungalov, Kite Surf ve Hotel kategorileri
+ animasyonlu ikonlar ve hover efektleriyle kart tasarımına dönüştürülmeli.
+- **Mekanlar Bölümü:** Moy Beach, Kite Beach Hotel ve Kite Beach Akyaka için
+ görsel ağırlıklı, tam ekran kart galerisi.
+- **Testimonial Slider:** Misafir yorumları ve puanlamaları.
+- **Instagram Feed / Galeri:** Sosyal medya entegrasyonu veya fotoğraf duvarı.
+- **Bizi Bulun:** Google Maps embed ile lokasyon bölümü.
+
+---
+
+## Eksik Sayfalar & Yeni Özellikler
+
+### 1. Rezervasyon / Booking Sistemi
+Online rezervasyon formu veya entegrasyon; bungalov, restoran ve kitesurf dersi
+için ayrı ayrı rezervasyon akışı.
+
+### 2. Dijital Menü
+Restoranlar için interaktif veya PDF tabanlı dijital menü sayfası.
+
+### 3. Galeri
+Profesyonel fotoğraf ve videolarla zengin, filtrelenebilir galeri sayfası
+(mekan ve kategori bazlı).
+
+### 4. Blog / Haberler
+Ege tatil rehberleri, kitesurf ipuçları, yerel etkinlikler gibi içeriklerle
+SEO değerini artıracak blog bölümü.
+
+### 5. Çoklu Dil Desteği
+Türkçe + İngilizce zorunlu; Almanca opsiyonel
+(Akyaka ve Datça'ya gelen yabancı turist profili gözetilerek).
+
+### 6. SSS Sayfası
+Konaklama koşulları, kitesurf eğitimi gereksinimleri, ulaşım ve iptal
+politikaları gibi sık sorulan sorular.
+
+### 7. Güçlendirilmiş İletişim Sayfası
+Her mekan için ayrı adres, telefon, e-posta ve harita bilgisi.
+
+---
+
+## Teknik Gereksinimler
+
+- **Responsive Tasarım:** Mobil öncelikli (mobile-first), tüm ekran boyutlarına uyumlu.
+- **Performans:** Lazy loading, WebP görsel formatı, CDN kullanımı ile hızlı yükleme.
+- **SEO:** Mekan bazlı anahtar kelimeler
+ (örn. "Akyaka beach bar", "Akçapınar bungalov", "kitesurf eğitimi Muğla").
+- **Güvenlik & Uyum:** SSL sertifikası, KVKK uyumu, çerez politikası banner'ı.
+- **Analitik:** Google Analytics 4 ve Meta Pixel entegrasyonu.
+- **CMS:** WordPress veya Webflow; içerik yönetiminin kolaylaştırılması için
+ güçlü bir yönetim paneli.
+
+---
+
+## Hedef Kitle
+
+Ege tatilini deniz, doğa ve gastronomi odaklı keşfetmek isteyen; 25–50 yaş arası,
+orta-üst gelir grubundan yerli ve yabancı turistler ile kitesurf meraklıları.
+
+---
+
+## Vizyon & Misyon (Referans)
+
+> **Vizyon:** Ege'nin eşsiz güzelliklerini Datça, Akyaka ve Alaçatı'da harmanlayarak;
+> doğaya saygılı, sürdürülebilir ve yenilikçi bir yaklaşımla misafirlerimize unutulmaz
+> tatil deneyimleri sunarak Türkiye'de turizm sektörünün öncü markası olmak.
+
+> **Misyon:** Yerel değerlerimizi modern hizmet anlayışıyla birleştirerek; misafirlerimizin
+> damak tadına, konforuna ve huzuruna hitap eden kaliteli restoran, konaklama ve beach
+> hizmetleri sunmak; bunu yaparken çevreye duyarlı, samimi ve profesyonel hizmet
+> anlayışımızla bölge turizminin gelişimine katkı sağlamak.
+
+---
+
+*Bu doküman bir web geliştirici ajansına veya tasarım ekibine proje brief'i olarak sunulabilir.*
\ No newline at end of file
diff --git a/lib/utils.ts b/lib/utils.ts
new file mode 100644
index 0000000..762b8e7
--- /dev/null
+++ b/lib/utils.ts
@@ -0,0 +1,3 @@
+export function cn(...classes: (string | undefined | null | false | 0)[]): string {
+ return classes.filter(Boolean).join(" ");
+}
diff --git a/next.config.ts b/next.config.ts
index e9ffa30..a9194aa 100644
--- a/next.config.ts
+++ b/next.config.ts
@@ -1,7 +1,14 @@
import type { NextConfig } from "next";
const nextConfig: NextConfig = {
- /* config options here */
+ images: {
+ remotePatterns: [
+ {
+ protocol: "https",
+ hostname: "images.unsplash.com",
+ },
+ ],
+ },
};
export default nextConfig;
diff --git a/package-lock.json b/package-lock.json
index 611c5d7..ea97040 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,6 +8,8 @@
"name": "moygrup",
"version": "0.1.0",
"dependencies": {
+ "framer-motion": "^12.40.0",
+ "lucide-react": "^1.17.0",
"next": "16.2.7",
"react": "19.2.4",
"react-dom": "19.2.4"
@@ -3762,6 +3764,33 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/framer-motion": {
+ "version": "12.40.0",
+ "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.40.0.tgz",
+ "integrity": "sha512-uaBd3qC1v3KQqBEjwTUd183K6PbS+j0yR9w9VmEOLWA/tnUcSn8Xa3uck7t4dgpDoUss8xQTcj8W2L07lrnLFg==",
+ "license": "MIT",
+ "dependencies": {
+ "motion-dom": "^12.40.0",
+ "motion-utils": "^12.39.0",
+ "tslib": "^2.4.0"
+ },
+ "peerDependencies": {
+ "@emotion/is-prop-valid": "*",
+ "react": "^18.0.0 || ^19.0.0",
+ "react-dom": "^18.0.0 || ^19.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@emotion/is-prop-valid": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "react-dom": {
+ "optional": true
+ }
+ }
+ },
"node_modules/function-bind": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
@@ -5032,6 +5061,15 @@
"yallist": "^3.0.2"
}
},
+ "node_modules/lucide-react": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-1.17.0.tgz",
+ "integrity": "sha512-9FA9evdox/JQL5PT57fdA1x/yg8T7knJ98+zjTL3UfKza6pflQUUh3XtaQIHKvnsJw1lmsEyHVlt5jchYxOQ5w==",
+ "license": "ISC",
+ "peerDependencies": {
+ "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0"
+ }
+ },
"node_modules/magic-string": {
"version": "0.30.21",
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
@@ -5099,6 +5137,21 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/motion-dom": {
+ "version": "12.40.0",
+ "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.40.0.tgz",
+ "integrity": "sha512-HxU3ZaBwNPVQUBQf1xxgq+7JrPNZvjLVxgbpEZL7RrWJnsxOf0/OM+yrHG9ogLQ31Do/r57Oz2gQWPK+6q62mg==",
+ "license": "MIT",
+ "dependencies": {
+ "motion-utils": "^12.39.0"
+ }
+ },
+ "node_modules/motion-utils": {
+ "version": "12.39.0",
+ "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.39.0.tgz",
+ "integrity": "sha512-8nadJAJjTtqRkmRF36FoJTrywK9nnFmnPwnSMyxaOCU7GDjN9RTMJIxx9De8ErM+vpPhMccr/6fo5WciyQLnMQ==",
+ "license": "MIT"
+ },
"node_modules/ms": {
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
diff --git a/package.json b/package.json
index 9b21a80..d95c998 100644
--- a/package.json
+++ b/package.json
@@ -9,6 +9,8 @@
"lint": "eslint"
},
"dependencies": {
+ "framer-motion": "^12.40.0",
+ "lucide-react": "^1.17.0",
"next": "16.2.7",
"react": "19.2.4",
"react-dom": "19.2.4"
diff --git a/proxy.ts b/proxy.ts
new file mode 100644
index 0000000..727c249
--- /dev/null
+++ b/proxy.ts
@@ -0,0 +1,37 @@
+import { NextResponse } from 'next/server';
+import type { NextRequest } from 'next/server';
+import { i18n } from './app/dictionaries';
+
+function getLocale(request: NextRequest): string {
+ // Always return default locale for now (can be improved to read headers)
+ return i18n.defaultLocale;
+}
+
+export function proxy(request: NextRequest) {
+ const pathname = request.nextUrl.pathname;
+
+ // Skip public files and _next requests
+ if (
+ pathname.startsWith('/_next') ||
+ pathname.includes('.') ||
+ pathname.startsWith('/api')
+ ) {
+ return;
+ }
+
+ // Check if there is any supported locale in the pathname
+ const pathnameIsMissingLocale = i18n.locales.every(
+ (locale) => !pathname.startsWith(`/${locale}/`) && pathname !== `/${locale}`
+ );
+
+ if (pathnameIsMissingLocale) {
+ const locale = getLocale(request);
+ return NextResponse.redirect(
+ new URL(`/${locale}${pathname === '/' ? '' : pathname}`, request.url)
+ );
+ }
+}
+
+export const config = {
+ matcher: ['/((?!api|_next/static|_next/image|favicon.ico).*)'],
+};
diff --git a/public/kite-beach-hotel.jpg b/public/kite-beach-hotel.jpg
new file mode 100644
index 0000000..e454496
Binary files /dev/null and b/public/kite-beach-hotel.jpg differ
diff --git a/public/logo.png b/public/logo.png
new file mode 100644
index 0000000..06417a0
Binary files /dev/null and b/public/logo.png differ
diff --git a/public/moy-beach.jpg b/public/moy-beach.jpg
new file mode 100644
index 0000000..21cdbf1
Binary files /dev/null and b/public/moy-beach.jpg differ
diff --git a/public/volkswagen-kite.png b/public/volkswagen-kite.png
new file mode 100644
index 0000000..be50ca6
Binary files /dev/null and b/public/volkswagen-kite.png differ