ÇıkGel App Prompt

ÇıkGel etkinlik ve topluluk uygulamasının arayüzü, akışları ve tasarım sistemi için yazılan promptun tamamı.

Tür
Mobil uygulama promptu
Prompt dili
Türkçe
Format
JSON
Promptun tamamı
{
  "project": {
    "name": "ÇıkGel",
    "type": "İstanbul odaklı sosyal etkinlik ve topluluk mobil uygulaması",
    "platform": [
      "iOS",
      "Android"
    ],
    "language": "Türkçe",
    "design_scope": "Kayıt ekranından başlayarak tüm kullanıcı deneyimi, tüm ana ekranlar, alt akışlar, durumlar, buton işlevleri ve organizatör araçları",
    "primary_goal": "İstanbul'daki kullanıcıların yakınlarındaki etkinlikleri harita üzerinden keşfetmesini, tek başına veya arkadaşlarıyla katılmasını, güvenli biçimde iletişim kurmasını ve isterse kendi etkinliğini oluşturmasını sağlamak",
    "core_value_proposition": "İstanbul’da ne yapacağını değil, kiminle yapacağını bul.",
    "product_positioning": "Dating uygulaması değil; gerçek hayatta ortak ilgi alanları üzerinden insanları buluşturan, şehir odaklı etkinlik ve topluluk ürünü",
    "mvp_focus": [
      "İstanbul",
      "Harita tabanlı keşif",
      "Etkinliklere katılma ve kaydetme",
      "Etkinlik sohbetleri",
      "Kullanıcı profili ve ilgi alanları",
      "Doğrulanmış organizatörler",
      "Ücretsiz ve ücretli etkinlikler",
      "Bekleme listesi",
      "QR check-in"
    ]
  },
  "brand_system": {
    "logo": {
      "concept": "Bir kapıdan dışarı çıkan enerjik insan figürü",
      "meaning": "Evden, rutinden veya yalnızlıktan çıkıp şehrin ve insanların içine karışmak",
      "usage": [
        "Tam logo: ikon + ÇıkGel yazısı",
        "Uygulama ikonu: yalnızca kapıdan çıkan karakter",
        "Loading animasyonu: karakterin kapıdan dışarı adım atması",
        "Harita kullanıcı konumu: küçük karakter başı veya kapı ikonu"
      ]
    },
    "colors": {
      "background_light_lilac": "#FCF0FA",
      "primary_purple": "#8972E6",
      "secondary_cyan": "#53BFCA",
      "text_primary": "#17151C",
      "text_secondary": "#6E6876",
      "surface_white": "#FFFFFF",
      "border_soft": "#E8DFF0",
      "success": "#42B883",
      "warning": "#F6B94A",
      "danger": "#E85D75",
      "note": "Ana marka iletişiminde yalnızca açık lila, mor ve cyan baskın kullanılmalı. Sistem durum renkleri yalnızca uyarı, başarı ve hata gibi işlevsel alanlarda sınırlı kullanılmalı."
    },
    "visual_direction": {
      "keywords": [
        "pastel",
        "güven verici",
        "sıcak",
        "oyuncu",
        "modern",
        "yuvarlak",
        "enerjik",
        "dost canlısı",
        "vektörel",
        "hafif naif"
      ],
      "illustration_style": {
        "description": "Basit geometrik şekillerden oluşan tatlı vektörel karakterler; yüz ifadeleri minimal, siyah çizgilerle veya nokta gözlerle verilir; şekiller organik ve yuvarlaktır.",
        "rules": [
          "3D render kullanılmamalı",
          "Fotogerçekçi maskot kullanılmamalı",
          "Keskin ve agresif köşeler minimumda tutulmalı",
          "Karakterlerin duyguları kolay anlaşılmalı",
          "Harita pinleri, boş durumlar, onboarding ve sistem mesajlarında aynı karakter ailesi kullanılmalı"
        ]
      },
      "photography": {
        "description": "Gerçek etkinlik fotoğrafları doğal, sıcak, samimi ve aşırı profesyonel görünmeyen şekilde kullanılmalı.",
        "rules": [
          "Stok fotoğraf hissi vermemeli",
          "Gerçek grup dinamiği göstermeli",
          "Çok karanlık gece fotoğraflarında okunabilirlik için yumuşak overlay kullanılmalı",
          "Etkinlik kartlarında insanların yüzleri ve ortam enerjisi anlaşılmalı"
        ]
      }
    },
    "typography": {
      "primary": "Yuvarlak, modern, yüksek okunabilirliğe sahip sans serif",
      "recommended_style": "Nunito Sans, Manrope, Plus Jakarta Sans veya benzer karakterde bir font",
      "weights": {
        "display": 800,
        "heading": 700,
        "subheading": 600,
        "body": 400,
        "caption": 400,
        "button": 700
      },
      "mobile_sizes_px": {
        "display": 32,
        "h1": 28,
        "h2": 24,
        "h3": 20,
        "body_large": 17,
        "body": 15,
        "caption": 13,
        "button": 16
      },
      "rules": [
        "Başlıklarda kısa ve direkt Türkçe kullanılmalı",
        "Tamamı büyük harf yalnızca küçük etiketlerde kullanılmalı",
        "Metinler fazla sıkışık olmamalı",
        "Satır yüksekliği gövde metinlerinde en az 1.45 olmalı"
      ]
    },
    "shape_language": {
      "corner_radius": {
        "small": 12,
        "medium": 18,
        "large": 26,
        "pill": 999
      },
      "cards": "Yuvarlatılmış, açık yüzeyli, ince border veya çok yumuşak gölge",
      "buttons": "Kalın, yuvarlak, geniş dokunma alanlı",
      "inputs": "Açık lila veya beyaz zemin, ince mor/lila border, hata durumunda net kırmızı açıklama",
      "icons": "Yuvarlak uçlu çizgisel ikonlar; aktif durumda dolu veya mor/cyan yüzeyli"
    },
    "motion": {
      "principles": [
        "Hızlı ama yumuşak geçişler",
        "Harita pinine basınca kartın alttan açılması",
        "Bottom sheet'in sürüklenebilir olması",
        "Katıl butonuna basınca küçük onay animasyonu",
        "Loading ekranında logo karakterinin kapıdan çıkması",
        "Onboarding karakterlerinin hafif zıplaması veya göz kırpması"
      ],
      "duration_ms": {
        "micro": 150,
        "standard": 250,
        "sheet": 320
      }
    }
  },
  "product_principles": [
    "Harita ilk deneyimin merkezinde olmalı",
    "Kullanıcı mümkün olan en az adımla etkinlik bulmalı",
    "Tek başına katılım güvenli ve normal hissettirilmeli",
    "Dating algısından kaçınılmalı",
    "Her ekranda birincil aksiyon net olmalı",
    "İstanbul'un semt, yaka ve ulaşım dinamikleri ürüne yansıtılmalı",
    "Kullanıcıdan gereksiz bilgi istenmemeli",
    "Katılımcı güvenliği ve moderasyon görünür olmalı",
    "Bildirimler anlamlı olmalı; spam ve gereksiz kampanya bildirimleri olmamalı"
  ],
  "user_roles": {
    "member": {
      "description": "Etkinlik keşfeden, kaydeden, katılan ve sohbet eden kullanıcı",
      "permissions": [
        "Etkinlik keşfetme",
        "Etkinlik kaydetme",
        "Ücretsiz etkinliğe katılma",
        "Ücretli etkinliğe bilet alma",
        "Bekleme listesine katılma",
        "Etkinlik sohbetine katılma",
        "Bağlantı isteği gönderme",
        "Etkinlik değerlendirme",
        "Şikayet ve engelleme"
      ]
    },
    "organizer": {
      "description": "Topluluk veya bireysel etkinlik oluşturan kullanıcı",
      "permissions": [
        "Etkinlik oluşturma",
        "Etkinlik düzenleme",
        "Katılımcı yönetme",
        "Duyuru gönderme",
        "QR check-in",
        "Bekleme listesi yönetme",
        "Etkinlik iptal etme",
        "Topluluk profili oluşturma",
        "Ücretli etkinlik tanımlama"
      ]
    }
  },
  "global_navigation": {
    "bottom_tabs": [
      {
        "id": "discover",
        "label": "Keşfet",
        "icon": "map-search",
        "default": true,
        "action": "İstanbul haritası ve etkinlik keşif ekranını açar"
      },
      {
        "id": "my_events",
        "label": "Etkinliklerim",
        "icon": "calendar-heart",
        "action": "Katılacaklarım, kaydettiklerim, geçmiş ve düzenlediklerim sekmelerini açar"
      },
      {
        "id": "messages",
        "label": "Mesajlar",
        "icon": "chat",
        "action": "Etkinlik sohbetlerini, direkt mesajları ve bağlantı isteklerini açar"
      },
      {
        "id": "profile",
        "label": "Profil",
        "icon": "user",
        "action": "Profil, ilgi alanları, tercihler, güven bilgileri ve ayarları açar"
      }
    ],
    "top_actions": {
      "notifications": {
        "icon": "bell",
        "placement": "Keşfet ekranı sağ üst",
        "action": "Bildirim merkezini açar"
      },
      "search": {
        "placement": "Keşfet ekranı üst alan",
        "placeholder": "Etkinlik, semt veya topluluk ara"
      },
      "filter": {
        "icon": "sliders",
        "placement": "Arama alanı sağında",
        "action": "Filtre bottom sheet'ini açar"
      }
    }
  },
  "application_map": {
    "authentication": [
      "Splash",
      "Karşılama",
      "Giriş yap",
      "Kayıt ol",
      "E-posta doğrulama",
      "Şifre yenileme"
    ],
    "onboarding": [
      "Konum izni",
      "İstanbul bölge tercihi",
      "ÇıkGel'de ne arıyorsun?",
      "İlgi alanları",
      "Sosyal tercihleri seç",
      "Bildirim izni",
      "Onboarding tamamlandı"
    ],
    "discover": [
      "Harita ana ekranı",
      "Harita + liste bottom sheet",
      "Arama sonuçları",
      "Filtreler",
      "Kategori sayfası",
      "Etkinlik detay",
      "Organizatör profili",
      "Topluluk profili",
      "Katılım akışı",
      "Bilet ödeme",
      "Bekleme listesi",
      "Paylaş",
      "Şikayet et"
    ],
    "my_events": [
      "Katılacaklarım",
      "Kaydettiklerim",
      "Geçmiş",
      "Düzenlediklerim",
      "Bilet ve QR",
      "Takvime ekle",
      "Katılım iptali",
      "Değerlendirme",
      "Etkinlik oluşturma",
      "Katılımcı yönetimi",
      "Check-in"
    ],
    "messages": [
      "Etkinlik sohbetleri",
      "Direkt mesajlar",
      "Bağlantı istekleri",
      "Sohbet detayı",
      "Mesaj şikayet et",
      "Kullanıcı engelle"
    ],
    "profile": [
      "Profil ana ekranı",
      "Profili düzenle",
      "İlgi alanları",
      "Sosyal tercihler",
      "Doğrulama merkezi",
      "Takip edilen topluluklar",
      "Bildirim ayarları",
      "Gizlilik ayarları",
      "Engellenen kullanıcılar",
      "Yardım",
      "Hesabı sil"
    ]
  },
  "screen_flows": [
    {
      "id": "splash",
      "route": "/splash",
      "purpose": "Uygulamanın açılış yükleme ekranı",
      "layout": [
        "Arka plan #FCF0FA",
        "Ortada ÇıkGel ikonunun büyük versiyonu",
        "Kapıdan çıkan karakter için kısa ve yumuşak animasyon",
        "Alt bölümde küçük ÇıkGel yazısı"
      ],
      "logic": [
        "Aktif oturum varsa token kontrol edilir",
        "Onboarding tamamlandıysa Keşfet ekranına gidilir",
        "Onboarding tamamlanmadıysa kaldığı adıma yönlendirilir",
        "Oturum yoksa Karşılama ekranına gidilir"
      ],
      "states": [
        "Yükleniyor",
        "Bağlantı yok",
        "Sunucu hatası"
      ]
    },
    {
      "id": "welcome",
      "route": "/welcome",
      "purpose": "Markayı ve ürün değerini ilk kez anlatmak",
      "layout": [
        "Üstte logo",
        "Ortada kapıdan çıkan farklı küçük karakterlerden oluşan tatlı vektörel illüstrasyon",
        "Başlık: İstanbul'da planın hazır.",
        "Alt metin: Yakınındaki etkinlikleri keşfet, tek başına ya da birlikte çık gel.",
        "Birincil buton: Kayıt ol",
        "İkincil buton: Giriş yap",
        "Alt metin bağlantısı: Misafir olarak göz at"
      ],
      "actions": [
        {
          "label": "Kayıt ol",
          "result": "/signup"
        },
        {
          "label": "Giriş yap",
          "result": "/login"
        },
        {
          "label": "Misafir olarak göz at",
          "result": "Sınırlı keşif modu açılır; katılma, kaydetme ve mesajlaşma için hesap istenir"
        }
      ]
    },
    {
      "id": "signup",
      "route": "/signup",
      "purpose": "Yeni kullanıcı hesabı oluşturmak",
      "layout": [
        "Başlık: ÇıkGel'e hoş geldin",
        "Alt metin: Birkaç adımda İstanbul'daki planlara katıl.",
        "Apple ile devam et",
        "Google ile devam et",
        "Ayırıcı: veya",
        "Ad soyad",
        "E-posta",
        "Şifre",
        "Şifreyi göster/gizle",
        "Kullanım Koşulları ve Gizlilik Politikası onay kutusu",
        "Birincil buton: Hesap oluştur",
        "Alt bağlantı: Zaten hesabın var mı? Giriş yap"
      ],
      "validation": {
        "name": "En az 2 karakter",
        "email": "Geçerli e-posta formatı",
        "password": "En az 8 karakter, bir harf ve bir rakam",
        "terms": "Onay zorunlu"
      },
      "actions": [
        {
          "label": "Hesap oluştur",
          "result": "Form geçerliyse doğrulama e-postası gönderilir ve /verify-email açılır"
        },
        {
          "label": "Apple ile devam et",
          "result": "Apple OAuth; başarılıysa onboarding'e geç"
        },
        {
          "label": "Google ile devam et",
          "result": "Google OAuth; başarılıysa onboarding'e geç"
        }
      ],
      "error_states": [
        "Bu e-posta zaten kayıtlı",
        "İnternet bağlantısı yok",
        "Hesap oluşturulamadı, tekrar dene"
      ]
    },
    {
      "id": "verify_email",
      "route": "/verify-email",
      "purpose": "E-posta doğrulaması",
      "layout": [
        "Tatlı zarf karakteri illüstrasyonu",
        "Başlık: E-postanı kontrol et",
        "Alt metin: Gönderdiğimiz 6 haneli kodu gir.",
        "6 haneli OTP alanı",
        "Kod gelmedi mi? Tekrar gönder",
        "E-posta adresini değiştir"
      ],
      "actions": [
        {
          "label": "Kodu doğrula",
          "result": "Başarılıysa /onboarding/location-permission"
        },
        {
          "label": "Tekrar gönder",
          "result": "60 saniyelik sayaç başlatılır"
        }
      ]
    },
    {
      "id": "login",
      "route": "/login",
      "purpose": "Mevcut kullanıcı girişi",
      "layout": [
        "E-posta",
        "Şifre",
        "Beni hatırla",
        "Şifremi unuttum",
        "Giriş yap",
        "Apple ile giriş yap",
        "Google ile giriş yap"
      ],
      "actions": [
        {
          "label": "Giriş yap",
          "result": "Başarılıysa onboarding durumuna göre Keşfet veya onboarding"
        },
        {
          "label": "Şifremi unuttum",
          "result": "/forgot-password"
        }
      ]
    },
    {
      "id": "location_permission",
      "route": "/onboarding/location-permission",
      "purpose": "Yakındaki etkinlikleri göstermek için konum izni istemek",
      "layout": [
        "İstanbul haritası ve küçük hareketli pin karakterleri",
        "Başlık: Yakınındaki planları gösterelim mi?",
        "Alt metin: Konumunu yalnızca sana yakın etkinlikleri önermek için kullanacağız.",
        "Birincil buton: Konumuma izin ver",
        "İkincil buton: Şimdilik semt seç"
      ],
      "actions": [
        {
          "label": "Konumuma izin ver",
          "result": "Sistem konum izni açılır; izin verilirse kullanıcı bölgesi otomatik önerilir"
        },
        {
          "label": "Şimdilik semt seç",
          "result": "/onboarding/region"
        }
      ],
      "permission_states": [
        "İzin verildi",
        "Yalnızca uygulama kullanılırken",
        "İzin reddedildi",
        "Ayarlar üzerinden açılması gerekiyor"
      ]
    },
    {
      "id": "region_preference",
      "route": "/onboarding/region",
      "purpose": "Kullanıcının İstanbul'da öncelik verdiği bölgeleri belirlemek",
      "layout": [
        "Başlık: İstanbul'da en çok nerelerde vakit geçiriyorsun?",
        "Seçenek kartları: Avrupa Yakası, Anadolu Yakası, İki yaka da",
        "Semt seç butonu",
        "Semt seçiminde çoklu seçim: Kadıköy, Beşiktaş, Şişli, Beyoğlu, Üsküdar, Bakırköy, Sarıyer, Ataşehir ve diğerleri",
        "Devam et"
      ],
      "actions": [
        {
          "label": "Devam et",
          "validation": "En az bir bölge veya semt seçilmeli",
          "result": "/onboarding/goals"
        }
      ]
    },
    {
      "id": "goals",
      "route": "/onboarding/goals",
      "purpose": "Kullanıcının uygulamayı kullanma amacını öğrenmek",
      "layout": [
        "Başlık: ÇıkGel'de ne arıyorsun?",
        "Açıklama: Birden fazla seçebilirsin.",
        "Yuvarlak karakterli seçim kartları"
      ],
      "options": [
        "Yeni insanlarla tanışmak",
        "İstanbul'u keşfetmek",
        "Hobi edinmek",
        "Etkinlik arkadaşı bulmak",
        "Birlikte spor yapmak",
        "Profesyonel çevre kurmak",
        "Yeni topluluklara katılmak",
        "Kültür ve sanat etkinlikleri bulmak"
      ],
      "actions": [
        {
          "label": "Devam et",
          "validation": "En az bir amaç",
          "result": "/onboarding/interests"
        }
      ]
    },
    {
      "id": "interests",
      "route": "/onboarding/interests",
      "purpose": "Kişiselleştirme için ilgi alanları",
      "layout": [
        "Arama alanı: İlgi alanı ara",
        "Renkli yuvarlak kategori chip'leri",
        "Seçilen ilgi sayacı",
        "Devam et"
      ],
      "minimum_selection": 5,
      "categories": {
        "Sanat ve kültür": [
          "Sinema",
          "Tiyatro",
          "Sergi",
          "Müze",
          "Edebiyat",
          "Fotoğraf"
        ],
        "Sosyal": [
          "Yeni arkadaşlar",
          "Kahve",
          "Akşam yemeği",
          "Quiz",
          "Masa oyunları"
        ],
        "Spor ve hareket": [
          "Yürüyüş",
          "Koşu",
          "Yoga",
          "Bisiklet",
          "Dans"
        ],
        "Yaratıcılık": [
          "Tasarım",
          "İllüstrasyon",
          "Seramik",
          "Yazarlık",
          "Yapay zekâ"
        ],
        "Profesyonel": [
          "Networking",
          "Girişimcilik",
          "Teknoloji",
          "Pazarlama",
          "Freelance"
        ],
        "Dil": [
          "İngilizce",
          "Almanca",
          "Fransızca",
          "İspanyolca",
          "Türkçe pratiği"
        ],
        "Müzik ve gece": [
          "Canlı müzik",
          "DJ",
          "Konser",
          "Karaoke",
          "Dans gecesi"
        ]
      },
      "actions": [
        {
          "label": "Devam et",
          "validation": "En az 5 ilgi alanı",
          "result": "/onboarding/social-preferences"
        }
      ]
    },
    {
      "id": "social_preferences",
      "route": "/onboarding/social-preferences",
      "purpose": "Etkinlik önerilerinin sosyal ortam biçimini kişiselleştirmek",
      "layout": [
        "Başlık: Nasıl planlar sana daha uygun?",
        "Açıklama: Bunları daha sonra değiştirebilirsin.",
        "Seçim kartları"
      ],
      "options": [
        "Küçük gruplar",
        "Kalabalık etkinlikler",
        "Gündüz planları",
        "Gece planları",
        "Alkolsüz etkinlikler",
        "Tek başıma katılmaya uygun",
        "Yeni başlayanlara uygun",
        "Kadınlara özel etkinlikler",
        "Ücretsiz etkinlikler",
        "Hafta sonu etkinlikleri"
      ],
      "actions": [
        {
          "label": "Devam et",
          "result": "/onboarding/notifications"
        }
      ]
    },
    {
      "id": "notification_permission",
      "route": "/onboarding/notifications",
      "purpose": "Yalnızca anlamlı bildirimler için izin istemek",
      "layout": [
        "Zil şeklinde tatlı karakter illüstrasyonu",
        "Başlık: Planı kaçırma",
        "Alt metin: Etkinlik hatırlatmaları, kontenjan açılması ve organizatör duyuruları için bildirim gönderebiliriz.",
        "Birincil buton: Bildirimlere izin ver",
        "İkincil buton: Şimdilik değil"
      ],
      "actions": [
        {
          "label": "Bildirimlere izin ver",
          "result": "Sistem izni açılır, sonra /onboarding/complete"
        },
        {
          "label": "Şimdilik değil",
          "result": "/onboarding/complete"
        }
      ]
    },
    {
      "id": "onboarding_complete",
      "route": "/onboarding/complete",
      "purpose": "Onboarding tamamlandığını göstermek",
      "layout": [
        "Bir grup tatlı karakterin kapıdan dışarı çıktığı illüstrasyon",
        "Başlık: İstanbul seni bekliyor",
        "Alt metin: Sana uygun planları hazırladık.",
        "Buton: Keşfetmeye başla"
      ],
      "actions": [
        {
          "label": "Keşfetmeye başla",
          "result": "/discover"
        }
      ]
    },
    {
      "id": "discover_map",
      "route": "/discover",
      "purpose": "İstanbul haritası üzerinden etkinlik keşfi",
      "default_screen": true,
      "layout": [
        "Üst sabit alan: solda İstanbul konum seçici, ortada arama, sağda bildirim ve filtre",
        "Ekranın üst yüzde 55-60'ında İstanbul haritası",
        "Kullanıcının konum noktası",
        "Etkinlik pinleri",
        "Yoğun bölgelerde sayı cluster'ları",
        "Haritanın üzerinde yatay hızlı filtre chip'leri",
        "Alt bölümde sürüklenebilir bottom sheet",
        "Alt navigasyon"
      ],
      "quick_filters": [
        "Bugün",
        "Yarın",
        "Hafta sonu",
        "Bu hafta",
        "Ücretsiz",
        "Yakınımda"
      ],
      "map_behavior": [
        "Pin rengi etkinlik kategorisine göre marka tonlarının varyasyonlarını kullanır",
        "Seçili pin büyür ve küçük yüz ifadesi olan karaktere dönüşür",
        "Pin tıklanınca alt kart açılır",
        "Harita sürüklenince Bu bölgede ara butonu çıkar",
        "Cluster tıklanınca harita yakınlaşır",
        "Konum butonu kullanıcıyı mevcut konumuna getirir",
        "Yaka değiştir butonu hızlı biçimde Avrupa/Anadolu odağına geçer"
      ],
      "bottom_sheet_states": {
        "collapsed": "Tek seçili etkinlik kartı veya Sana yakın etkinlikler başlığı görünür",
        "half": "Harita ile 2-3 etkinlik kartı birlikte görünür",
        "expanded": "Tam liste görünümü, harita küçülür veya kapanır"
      },
      "actions": [
        {
          "trigger": "Harita pinine bas",
          "result": "Etkinlik mini kartı açılır"
        },
        {
          "trigger": "Mini karta bas",
          "result": "/event/{eventId}"
        },
        {
          "trigger": "Arama alanına bas",
          "result": "/discover/search"
        },
        {
          "trigger": "Filtre ikonuna bas",
          "result": "/discover/filters"
        },
        {
          "trigger": "Bildirim ikonuna bas",
          "result": "/notifications"
        },
        {
          "trigger": "Kalp ikonuna bas",
          "result": "Etkinlik Kaydettiklerim'e eklenir; kullanıcı misafirse kayıt ekranı açılır"
        },
        {
          "trigger": "Bu bölgede ara",
          "result": "Haritanın görünür sınırları içinde sorgu yenilenir"
        }
      ]
    },
    {
      "id": "event_card",
      "component": true,
      "purpose": "Etkinliği hızlı karar verilebilir şekilde göstermek",
      "elements": [
        "Etkinlik görseli",
        "Kaydet butonu",
        "Kategori etiketi",
        "Son 3 yer veya Dolu etiketi",
        "Etkinlik adı",
        "Tarih ve saat",
        "Semt",
        "Tahmini ulaşım süresi",
        "Katılımcı avatarları",
        "12 kişi geliyor",
        "Tek başına gelmeye uygun",
        "Doğrulanmış organizatör"
      ],
      "interaction": [
        "Kartın tamamı tıklanabilir",
        "Kalp butonu karta gitmeden kaydeder",
        "Kart uzun basıldığında hızlı aksiyon menüsü açılır: Kaydet, Paylaş, İlgilenmiyorum"
      ]
    },
    {
      "id": "search",
      "route": "/discover/search",
      "purpose": "Etkinlik, semt ve topluluk aramak",
      "layout": [
        "Otomatik odaklanan arama alanı",
        "Son aramalar",
        "Popüler aramalar",
        "Semtler",
        "Kategoriler",
        "Canlı sonuçlar"
      ],
      "search_groups": [
        "Etkinlikler",
        "Topluluklar",
        "Organizatörler",
        "Semtler"
      ],
      "actions": [
        {
          "trigger": "Sonuca bas",
          "result": "İlgili detay sayfası açılır"
        },
        {
          "trigger": "Tümünü gör",
          "result": "Sonuç türüne göre tam liste"
        },
        {
          "trigger": "Aramayı temizle",
          "result": "Varsayılan öneriler görünür"
        }
      ],
      "empty_state": {
        "title": "Bu aramada henüz bir plan yok",
        "body": "Farklı bir kelime deneyebilir veya yakındaki etkinliklere bakabilirsin.",
        "button": "Yakınımdakileri göster"
      }
    },
    {
      "id": "filters",
      "route": "/discover/filters",
      "presentation": "Bottom sheet veya tam ekran modal",
      "purpose": "Sonuçları ayrıntılı biçimde daraltmak",
      "sections": {
        "date": [
          "Bugün",
          "Yarın",
          "Hafta sonu",
          "Tarih seç"
        ],
        "location": [
          "Yakınımda",
          "Avrupa Yakası",
          "Anadolu Yakası",
          "Semt seç"
        ],
        "distance": [
          "2 km",
          "5 km",
          "10 km",
          "25 km",
          "Tümü"
        ],
        "price": [
          "Ücretsiz",
          "Ücretli",
          "Fiyat aralığı"
        ],
        "category": [
          "Sosyalleşme",
          "Yeme içme",
          "Sanat ve kültür",
          "Spor ve hareket",
          "Müzik ve gece",
          "Workshop",
          "Networking",
          "Dil pratiği",
          "Oyun",
          "Açık hava"
        ],
        "social_environment": [
          "Tek başına gelmeye uygun",
          "Küçük grup",
          "Yeni başlayanlara uygun",
          "Alkolsüz",
          "Kadınlara özel",
          "Erişilebilir mekân"
        ],
        "format": [
          "Yüz yüze",
          "Online",
          "Hibrit"
        ]
      },
      "actions": [
        {
          "label": "Sonuçları göster",
          "result": "Filtre uygulanır, Keşfet ekranına dönülür"
        },
        {
          "label": "Temizle",
          "result": "Tüm filtreler sıfırlanır"
        }
      ]
    },
    {
      "id": "event_detail",
      "route": "/event/{eventId}",
      "purpose": "Kullanıcıya etkinliğe katılma kararı için tüm bilgileri vermek",
      "layout": [
        "Üstte büyük görsel veya kısa video",
        "Geri, paylaş, kaydet aksiyonları",
        "Etkinlik adı",
        "Kategori ve sosyal etiketler",
        "Tarih ve saat kartı",
        "Konum kartı",
        "Ulaşım süresi ve Haritada göster",
        "Ücret ve kalan kontenjan",
        "Kimler geliyor",
        "Tek başına gelen kişi sayısı",
        "İlk kez katılan kişi sayısı",
        "Organizatör kartı",
        "Etkinlik açıklaması",
        "Program",
        "Neler dahil",
        "İptal koşulları",
        "Benzer etkinlikler",
        "Sabit alt katılım butonu"
      ],
      "social_trust_labels": [
        "Tek başına gelmeye uygun",
        "Yeni başlayanlara uygun",
        "Alkolsüz",
        "İngilizce konuşulabilir",
        "Kadınlara özel",
        "Erişilebilir mekân"
      ],
      "primary_button_states": {
        "free_open": "Katıl",
        "paid_open": "Bilet al · {price} TL",
        "full": "Bekleme listesine katıl",
        "joined": "Katılıyorsun",
        "cancelled": "Etkinlik iptal edildi",
        "past": "Etkinlik sona erdi"
      },
      "actions": [
        {
          "trigger": "Katıl",
          "result": "Katılım onay bottom sheet'i açılır"
        },
        {
          "trigger": "Bilet al",
          "result": "/event/{eventId}/checkout"
        },
        {
          "trigger": "Bekleme listesine katıl",
          "result": "Onay sonrası sıraya eklenir ve bildirim izni önerilir"
        },
        {
          "trigger": "Kimler geliyor alanına bas",
          "result": "/event/{eventId}/attendees"
        },
        {
          "trigger": "Organizatör kartına bas",
          "result": "/organizer/{organizerId}"
        },
        {
          "trigger": "Haritada göster",
          "result": "Harita modalı; yol tarifi seçenekleri"
        },
        {
          "trigger": "Paylaş",
          "result": "Sistem paylaşım menüsü"
        },
        {
          "trigger": "Şikayet et",
          "result": "Neden seçimi ve moderasyon formu"
        }
      ]
    },
    {
      "id": "free_join_confirmation",
      "route": "/event/{eventId}/join",
      "presentation": "Bottom sheet",
      "layout": [
        "Etkinlik özeti",
        "Katılım kuralları",
        "Misafir getirecek misin? seçeneği",
        "Organizatörün soruları varsa cevap alanları",
        "Katılımı onayla"
      ],
      "actions": [
        {
          "label": "Katılımı onayla",
          "result": "Etkinlik Etkinliklerim > Katılacaklarım'a eklenir; etkinlik sohbeti açılır; başarı ekranı gösterilir"
        }
      ]
    },
    {
      "id": "checkout",
      "route": "/event/{eventId}/checkout",
      "purpose": "Ücretli etkinlik bilet satın alma",
      "layout": [
        "Bilet türü seçimi",
        "Adet",
        "Fiyat özeti",
        "Hizmet bedeli",
        "Toplam",
        "Kart bilgisi veya Apple Pay/Google Pay",
        "Fatura bilgisi opsiyonel",
        "İptal ve iade koşulları",
        "Ödemeyi tamamla"
      ],
      "actions": [
        {
          "label": "Ödemeyi tamamla",
          "result": "Ödeme başarılıysa dijital bilet ve QR oluşturulur"
        }
      ],
      "states": [
        "Ödeme işleniyor",
        "Ödeme başarılı",
        "Ödeme reddedildi",
        "Kontenjan ödeme sırasında doldu",
        "3D Secure doğrulaması"
      ]
    },
    {
      "id": "join_success",
      "route": "/event/{eventId}/success",
      "purpose": "Katılım sonrası net bir sonraki adımı göstermek",
      "layout": [
        "Kutlama yapan karakter illüstrasyonu",
        "Başlık: Plana dahil oldun!",
        "Tarih, saat, semt",
        "Takvime ekle",
        "Etkinlik sohbetine git",
        "Etkinliklerim'de görüntüle",
        "Arkadaşınla paylaş"
      ]
    },
    {
      "id": "attendees",
      "route": "/event/{eventId}/attendees",
      "purpose": "Katılımcıları güvenli ve kontrollü göstermek",
      "privacy_rules": [
        "Kullanıcı görünürlüğünü profil ayarından kapatabilir",
        "Tam profil yalnızca etkinliğe katılanlar tarafından görülür",
        "Telefon ve e-posta görünmez",
        "Direkt mesaj yalnızca bağlantı isteği kabul edilirse açılır"
      ],
      "layout": [
        "Katılımcı sayısı",
        "Tek başına gelenler",
        "İlk kez katılanlar",
        "Katılımcı kartları",
        "Bağlantı isteği gönder"
      ]
    },
    {
      "id": "organizer_profile",
      "route": "/organizer/{organizerId}",
      "purpose": "Organizatör güvenini ve geçmişini göstermek",
      "layout": [
        "Profil veya topluluk görseli",
        "Ad",
        "Doğrulanmış rozeti",
        "Kısa açıklama",
        "Düzenlenen etkinlik sayısı",
        "Katılımcı memnuniyeti",
        "Takip et",
        "Yaklaşan etkinlikler",
        "Geçmiş etkinlikler",
        "Yorumlar",
        "Soru sor"
      ],
      "actions": [
        {
          "label": "Takip et",
          "result": "Yeni etkinlik bildirimi tercihi sorulur"
        },
        {
          "label": "Soru sor",
          "result": "Etkinlik seçimi veya genel mesaj formu"
        }
      ]
    },
    {
      "id": "my_events",
      "route": "/my-events",
      "purpose": "Kullanıcının etkinlik ilişkilerini yönetmek",
      "tabs": [
        "Katılacaklarım",
        "Kaydettiklerim",
        "Geçmiş",
        "Düzenlediklerim"
      ],
      "default_tab": "Katılacaklarım",
      "actions": [
        {
          "trigger": "Yaklaşan etkinlik kartına bas",
          "result": "Etkinlik hazırlık detay ekranı"
        },
        {
          "trigger": "Kaydedilen karta bas",
          "result": "Etkinlik detay"
        },
        {
          "trigger": "Geçmiş karta bas",
          "result": "Değerlendirme veya yeniden benzer etkinlik bul"
        },
        {
          "trigger": "Düzenlediklerim > Yeni etkinlik",
          "result": "/organizer/create-event"
        }
      ]
    },
    {
      "id": "upcoming_event_management",
      "route": "/my-events/{eventId}",
      "purpose": "Katılınacak etkinliğe hazırlık ve bilet yönetimi",
      "layout": [
        "Etkinliğe kalan süre",
        "QR bilet",
        "Yol tarifi",
        "Takvime ekle",
        "Etkinlik sohbeti",
        "Organizatör duyuruları",
        "Katılımı iptal et",
        "Arkadaşına gönder"
      ],
      "actions": [
        {
          "label": "QR bileti aç",
          "result": "Ekran parlaklığı artar, tam ekran QR görünür"
        },
        {
          "label": "Katılımı iptal et",
          "result": "İptal nedeni ve koşul onayı modalı"
        }
      ]
    },
    {
      "id": "event_review",
      "route": "/event/{eventId}/review",
      "purpose": "Geçmiş etkinliği değerlendirmek",
      "layout": [
        "Genel deneyim 1-5",
        "Organizatör iletişimi",
        "Mekân doğruluğu",
        "Etkinlik açıklamasına uygunluk",
        "Tekrar katılır mısın?",
        "Kısa yorum",
        "Fotoğraf ekle opsiyonel"
      ],
      "actions": [
        {
          "label": "Değerlendirmeyi gönder",
          "result": "Teşekkür ekranı ve benzer etkinlik önerileri"
        }
      ]
    },
    {
      "id": "messages_home",
      "route": "/messages",
      "purpose": "Tüm iletişimleri düzenlemek",
      "tabs": [
        "Etkinlik sohbetleri",
        "Direkt mesajlar",
        "İstekler"
      ],
      "chat_list_item": [
        "Avatar veya etkinlik görseli",
        "Sohbet adı",
        "Son mesaj",
        "Saat",
        "Okunmamış sayısı",
        "Etkinliğe kalan süre etiketi"
      ],
      "empty_states": {
        "event_chats": "Katıldığın etkinliklerin sohbetleri burada görünecek.",
        "direct_messages": "Aynı etkinlikte tanıştığın kişilerle karşılıklı onay sonrası konuşabilirsin.",
        "requests": "Yeni bağlantı isteğin yok."
      }
    },
    {
      "id": "event_chat",
      "route": "/messages/event/{eventId}",
      "purpose": "Etkinlik öncesi ve sırasında grup iletişimi",
      "layout": [
        "Üstte etkinlik adı ve tarih",
        "Sabit organizatör duyurusu",
        "Mesaj listesi",
        "Fotoğraf gönder",
        "Konum paylaş",
        "Mesaj yaz",
        "Sohbet kuralları bağlantısı"
      ],
      "moderation": [
        "Mesaja uzun basınca şikayet et",
        "Kullanıcıyı engelle",
        "Organizatör mesaj sabitleyebilir",
        "Etkinlik bittikten 30 gün sonra sohbet arşivlenir"
      ]
    },
    {
      "id": "direct_message",
      "route": "/messages/user/{userId}",
      "purpose": "Karşılıklı bağlantı sonrası birebir sohbet",
      "entry_rule": "Aynı etkinliğe katılmış olma ve bağlantı isteğinin kabul edilmesi",
      "layout": [
        "Kullanıcı adı",
        "Ortak etkinlik bilgisi",
        "Mesaj listesi",
        "Mesaj yaz",
        "Engelle",
        "Şikayet et",
        "Bağlantıyı kaldır"
      ]
    },
    {
      "id": "profile",
      "route": "/profile",
      "purpose": "Kullanıcı kimliği, tercihler ve güven bilgileri",
      "layout": [
        "Profil fotoğrafı",
        "Ad",
        "Semt",
        "Kısa biyografi",
        "Profili düzenle",
        "Katıldığı etkinlik sayısı",
        "Takip ettiği topluluk sayısı",
        "Düzenlediği etkinlik sayısı",
        "ÇıkGel'de ne arıyorsun?",
        "İlgi alanları",
        "Sosyal tercihler",
        "Doğrulama ve güven",
        "Takip edilen topluluklar",
        "Ayarlar"
      ],
      "actions": [
        {
          "label": "Profili düzenle",
          "result": "/profile/edit"
        },
        {
          "label": "İlgi alanlarını düzenle",
          "result": "/profile/interests"
        },
        {
          "label": "Doğrulama ve güven",
          "result": "/profile/verification"
        },
        {
          "label": "Ayarlar",
          "result": "/settings"
        }
      ]
    },
    {
      "id": "profile_edit",
      "route": "/profile/edit",
      "purpose": "Kullanıcı profilini güncellemek",
      "fields": [
        "Profil fotoğrafı",
        "Ad soyad",
        "Kullanıcı adı",
        "Kısa biyografi",
        "Semt",
        "Konuştuğu diller",
        "Profil görünürlüğü",
        "Etkinlik katılım görünürlüğü"
      ],
      "actions": [
        {
          "label": "Kaydet",
          "result": "Değişiklikler doğrulanır ve profil ekranına dönülür"
        }
      ]
    },
    {
      "id": "verification_center",
      "route": "/profile/verification",
      "purpose": "Güvenli profil sistemi",
      "items": [
        {
          "name": "E-posta doğrulama",
          "required": true
        },
        {
          "name": "Telefon doğrulama",
          "required": false
        },
        {
          "name": "Kimlik doğrulama",
          "required": "Organizatörler için önerilir"
        },
        {
          "name": "Sosyal hesap doğrulama",
          "required": false
        }
      ],
      "display_metrics": [
        "Katılım oranı",
        "İptal oranı",
        "Topluluk kurallarına uyum",
        "Organizatör değerlendirmeleri"
      ]
    },
    {
      "id": "notifications_center",
      "route": "/notifications",
      "purpose": "Anlamlı uygulama bildirimlerini toplamak",
      "groups": [
        "Bugün",
        "Bu hafta",
        "Daha önce"
      ],
      "notification_types": [
        "Etkinlik hatırlatması",
        "Kontenjan açıldı",
        "Etkinlik saati değişti",
        "Etkinlik iptal edildi",
        "Organizatör duyurusu",
        "Yeni mesaj",
        "Bağlantı isteği",
        "Kaydettiğin etkinlik dolmak üzere",
        "Takip ettiğin topluluk yeni etkinlik açtı"
      ],
      "actions": [
        {
          "trigger": "Bildirim satırına bas",
          "result": "İlgili ekran açılır"
        },
        {
          "trigger": "Üç nokta",
          "result": "Okundu işaretle, bu tür bildirimleri kapat"
        }
      ],
      "rule": "Bildirim akışında reklam gösterilmemeli"
    },
    {
      "id": "settings",
      "route": "/settings",
      "purpose": "Uygulama ve hesap tercihlerini yönetmek",
      "sections": {
        "Hesap": [
          "E-posta",
          "Telefon",
          "Şifre değiştir",
          "Bağlı hesaplar"
        ],
        "Bildirimler": [
          "Etkinlik hatırlatmaları",
          "Mesajlar",
          "Kontenjan bildirimleri",
          "Yakınımdaki yeni etkinlikler",
          "Topluluk güncellemeleri"
        ],
        "Gizlilik": [
          "Profil görünürlüğü",
          "Katıldığım etkinlikleri kim görebilir?",
          "Konum hassasiyeti",
          "Arama motorlarında görünürlük"
        ],
        "Güvenlik": [
          "Engellenen kullanıcılar",
          "Oturumlar",
          "İki aşamalı doğrulama"
        ],
        "Destek": [
          "Yardım merkezi",
          "Sorun bildir",
          "Topluluk kuralları",
          "Gizlilik politikası",
          "Kullanım koşulları"
        ],
        "Hesap işlemleri": [
          "Çıkış yap",
          "Hesabı dondur",
          "Hesabı sil"
        ]
      }
    },
    {
      "id": "create_event_entry",
      "route": "/organizer/create-event",
      "purpose": "Yeni etkinlik oluşturma akışını başlatmak",
      "layout": [
        "Tatlı organizatör karakter illüstrasyonu",
        "Başlık: Planını İstanbul'la paylaş",
        "Kısa açıklama",
        "Etkinlik oluştur",
        "Topluluk oluştur"
      ]
    },
    {
      "id": "create_event_wizard",
      "route": "/organizer/create-event/steps",
      "purpose": "Adım adım etkinlik oluşturmak",
      "steps": [
        {
          "step": 1,
          "title": "Etkinliğin temel bilgileri",
          "fields": [
            "Etkinlik adı",
            "Kategori",
            "Kısa açıklama",
            "Kapak görseli",
            "Yüz yüze / online / hibrit"
          ]
        },
        {
          "step": 2,
          "title": "Tarih ve yer",
          "fields": [
            "Başlangıç tarihi",
            "Başlangıç saati",
            "Bitiş saati",
            "Tekrarlanan etkinlik",
            "Mekân adı",
            "Açık adres",
            "Harita pini",
            "Adres katılımcılara ne zaman gösterilsin?"
          ]
        },
        {
          "step": 3,
          "title": "Katılımcılar",
          "fields": [
            "Kapasite",
            "Bekleme listesi açık mı?",
            "Misafir getirilebilir mi?",
            "Onaylı katılım mı?",
            "Katılımcıya sorulacak sorular"
          ]
        },
        {
          "step": 4,
          "title": "Sosyal ortam",
          "fields": [
            "Tek başına gelmeye uygun",
            "Yeni başlayanlara uygun",
            "Alkolsüz",
            "Kadınlara özel",
            "Dil",
            "Erişilebilirlik bilgisi"
          ]
        },
        {
          "step": 5,
          "title": "Ücret",
          "fields": [
            "Ücretsiz",
            "Ücretli",
            "Bilet türleri",
            "Fiyat",
            "İade koşulları"
          ]
        },
        {
          "step": 6,
          "title": "Detaylar",
          "fields": [
            "Uzun açıklama",
            "Program",
            "Neler dahil?",
            "Katılımcı ne getirmeli?",
            "Kurallar"
          ]
        },
        {
          "step": 7,
          "title": "Önizleme ve yayınla",
          "fields": [
            "Etkinlik önizlemesi",
            "Taslak kaydet",
            "Şimdi yayınla",
            "İleri tarihli yayınla"
          ]
        }
      ],
      "actions": [
        {
          "label": "Devam et",
          "result": "Form doğrulanır ve sonraki adıma geçilir"
        },
        {
          "label": "Taslak kaydet",
          "result": "Düzenlediklerim > Taslaklar"
        },
        {
          "label": "Yayınla",
          "result": "Moderasyon kontrolü veya doğrudan yayın; başarı ekranı"
        }
      ]
    },
    {
      "id": "organizer_dashboard",
      "route": "/organizer/event/{eventId}",
      "purpose": "Yayınlanan etkinliği yönetmek",
      "sections": [
        "Özet",
        "Katılımcılar",
        "Bekleme listesi",
        "Mesajlar",
        "Check-in",
        "İstatistikler",
        "Etkinliği düzenle"
      ],
      "metrics": [
        "Görüntülenme",
        "Kaydetme",
        "Katılım",
        "Bilet geliri",
        "İptal sayısı",
        "Check-in oranı"
      ],
      "actions": [
        {
          "label": "Duyuru gönder",
          "result": "Katılımcılara push ve etkinlik sohbeti mesajı"
        },
        {
          "label": "Katılımcıları yönet",
          "result": "Onayla, çıkar, mesaj gönder"
        },
        {
          "label": "QR check-in",
          "result": "Kamera açılır"
        },
        {
          "label": "Etkinliği iptal et",
          "result": "Neden, iade ve bildirim adımları"
        }
      ]
    },
    {
      "id": "qr_checkin",
      "route": "/organizer/event/{eventId}/checkin",
      "purpose": "Etkinlik girişinde hızlı check-in",
      "layout": [
        "Kamera alanı",
        "QR hizalama çerçevesi",
        "Manuel isim ara",
        "Check-in sayacı",
        "Sorunlu bilet uyarısı"
      ],
      "states": [
        "Başarılı check-in",
        "Daha önce check-in yapılmış",
        "Geçersiz bilet",
        "Yanlış etkinlik bileti",
        "İnternet yok, çevrimdışı kaydet"
      ]
    }
  ],
  "component_library": {
    "buttons": {
      "primary": {
        "background": "#8972E6",
        "text": "#FFFFFF",
        "height": 52,
        "radius": 18,
        "states": [
          "default",
          "pressed",
          "loading",
          "disabled"
        ]
      },
      "secondary": {
        "background": "#53BFCA",
        "text": "#17151C",
        "height": 52,
        "radius": 18
      },
      "tertiary": {
        "background": "transparent",
        "text": "#8972E6"
      },
      "danger": {
        "background": "#E85D75",
        "text": "#FFFFFF"
      }
    },
    "chips": {
      "default": "Beyaz zemin, yumuşak border",
      "selected": "Mor zemin, beyaz yazı",
      "category": "Açık lila zemin, mor veya cyan ikon",
      "height": 38,
      "radius": 999
    },
    "cards": {
      "event": "Büyük görsel + kısa metin + sosyal güven etiketleri",
      "compact_event": "Harita pini sonrası açılan yatay küçük kart",
      "organizer": "Avatar, doğrulama, kısa istatistik ve takip butonu",
      "empty_state": "Tatlı vektörel karakter + kısa açıklama + tek CTA",
      "notice": "Açık lila yüzey, küçük karakter, kısa açıklama"
    },
    "bottom_sheet": {
      "background": "#FFFFFF",
      "radius_top": 28,
      "drag_handle": true,
      "snap_points": [
        "collapsed",
        "half",
        "expanded"
      ]
    },
    "navigation": {
      "background": "Yarı opak beyaz veya açık lila",
      "active_color": "#8972E6",
      "inactive_color": "#6E6876",
      "style": "Yuvarlatılmış, hafif yüzen alt bar"
    },
    "map_pins": {
      "default": "Cyan kapı ikonu",
      "selected": "Mor karakterli büyük pin",
      "cluster": "Mor daire içinde beyaz sayı",
      "saved": "Kalp işaretli varyasyon",
      "sold_out": "Düşük opaklık ve Dolu etiketi"
    }
  },
  "microcopy_style": {
    "tone": [
      "samimi",
      "net",
      "genç",
      "güven verici",
      "fazla şakacı olmayan",
      "şiirsel olmayan"
    ],
    "examples": {
      "empty_saved": "Henüz bir plan kaydetmedin. Hoşuna giden etkinliklerde kalbe dokun.",
      "no_results": "Bu bölgede şu an eşleşen bir etkinlik yok. Haritayı biraz uzaklaştırmayı dene.",
      "join_success": "Plana dahil oldun!",
      "waitlist_success": "Sıraya girdin. Yer açılırsa sana hemen haber vereceğiz.",
      "cancel_warning": "Katılımını iptal etmek istediğine emin misin? Yerini bekleyen biri olabilir.",
      "offline": "Bağlantı yok. Yeniden bağlandığında sonuçları güncelleyeceğiz.",
      "profile_incomplete": "Sana daha iyi etkinlikler önerebilmemiz için profilini tamamla."
    }
  },
  "system_states": {
    "loading": {
      "style": "Skeleton kartlar ve küçük hareketli karakter",
      "rule": "Tam ekran spinner mümkün olduğunca kullanılmamalı"
    },
    "empty": {
      "style": "Her boş durumda farklı ama aynı aileden vektörel karakter",
      "must_include": [
        "Kısa başlık",
        "Açıklama",
        "Tek bir sonraki adım"
      ]
    },
    "error": {
      "style": "Sakin, suçlayıcı olmayan dil",
      "actions": [
        "Tekrar dene",
        "Geri dön",
        "Destek al"
      ]
    },
    "offline": {
      "behavior": [
        "Son indirilen etkinlikler gösterilir",
        "Kaydetme ve mesaj gönderme sıraya alınır",
        "Harita üzerinde çevrimdışı uyarı görünür"
      ]
    }
  },
  "safety_and_moderation": {
    "principles": [
      "Telefon ve e-posta herkese açık gösterilmez",
      "Direkt mesaj karşılıklı bağlantı sonrası açılır",
      "Etkinlik sohbetinde şikayet ve engelleme kolay erişilir",
      "Organizatörler doğrulanabilir",
      "Şüpheli etkinlikler moderasyona gider",
      "Kullanıcılar etkinlik ve organizatör şikayet edebilir",
      "Konum hassasiyeti kullanıcı kontrolündedir"
    ],
    "report_reasons": [
      "Yanıltıcı etkinlik",
      "Taciz veya uygunsuz davranış",
      "Spam",
      "Güvenlik riski",
      "Nefret söylemi",
      "Sahte profil",
      "Diğer"
    ]
  },
  "accessibility": {
    "requirements": [
      "Minimum dokunma alanı 44x44 px",
      "Metin ve arka plan kontrastı WCAG AA",
      "Dinamik font boyutlarını destekle",
      "Ekran okuyucu etiketleri",
      "Renk tek başına durum anlatmamalı",
      "Harita pinlerinde ikon ve etiket birlikte kullanılmalı",
      "Animasyon azaltma ayarına uyum"
    ]
  },
  "analytics_events": [
    "signup_started",
    "signup_completed",
    "onboarding_completed",
    "location_permission_granted",
    "discover_map_opened",
    "event_pin_tapped",
    "event_detail_opened",
    "event_saved",
    "event_join_started",
    "event_join_completed",
    "ticket_purchase_completed",
    "waitlist_joined",
    "message_sent",
    "connection_request_sent",
    "event_created",
    "event_published",
    "checkin_completed",
    "report_submitted"
  ],
  "sample_istanbul_content": {
    "events": [
      {
        "title": "Kadıköy'de Yeni İnsanlarla Kahve",
        "category": "Sosyalleşme",
        "district": "Kadıköy",
        "time": "Cumartesi 15.00",
        "price": "Ücretsiz",
        "labels": [
          "Tek başına gelmeye uygun",
          "Küçük grup"
        ]
      },
      {
        "title": "Bebek–Kuruçeşme Gün Batımı Yürüyüşü",
        "category": "Açık hava",
        "district": "Beşiktaş",
        "time": "Pazar 18.30",
        "price": "Ücretsiz",
        "labels": [
          "Yeni başlayanlara uygun"
        ]
      },
      {
        "title": "Yaratıcı Kadınlar Kahvesi",
        "category": "Networking",
        "district": "Şişli",
        "time": "Çarşamba 19.00",
        "price": "250 TL",
        "labels": [
          "Kadınlara özel",
          "Tek başına gelmeye uygun"
        ]
      },
      {
        "title": "İlk Kez Seramik Deneyenler",
        "category": "Workshop",
        "district": "Beyoğlu",
        "time": "Cumartesi 13.00",
        "price": "650 TL",
        "labels": [
          "Yeni başlayanlara uygun",
          "Malzemeler dahil"
        ]
      },
      {
        "title": "İngilizce Konuşma Kulübü",
        "category": "Dil pratiği",
        "district": "Üsküdar",
        "time": "Perşembe 20.00",
        "price": "Ücretsiz",
        "labels": [
          "Tek başına gelmeye uygun"
        ]
      }
    ]
  },
  "design_output_requirements": {
    "deliverables": [
      "Tüm ekranların yüksek çözünürlüklü mobil UI tasarımı",
      "Her ekranın boş, dolu, loading ve hata durumları",
      "Tıklanabilir prototip akışı",
      "Component library",
      "Color styles",
      "Text styles",
      "Auto layout",
      "Map pin seti",
      "İllüstrasyon karakter seti",
      "App icon",
      "Splash screen",
      "Onboarding ekranları",
      "Organizer flow",
      "QR check-in ekranları"
    ],
    "rules_for_ai_designer": [
      "Meetup ekranlarını kopyalama; yalnızca kullanıcı deneyimi mantığını referans al",
      "Görsel dil tamamen ÇıkGel markasına ait olmalı",
      "Tüm metinler Türkçe olmalı",
      "Lorem ipsum kullanılmamalı",
      "İstanbul semtleri ve gerçekçi örnek etkinlikler kullanılmalı",
      "Alt navigasyon sırası kesinlikle Keşfet, Etkinliklerim, Mesajlar, Profil olmalı",
      "İlk ana ekran kesinlikle İstanbul haritası olmalı",
      "Harita ve liste aynı ekran içinde bottom sheet ile birlikte çalışmalı",
      "Tasarım pastel, güven verici, sıcak ve vektörel karakter destekli olmalı",
      "Ana renkler #FCF0FA, #8972E6 ve #53BFCA olmalı",
      "Her ekranda birincil CTA net biçimde görünmeli",
      "Mobil öncelikli tasarla",
      "iPhone 15 Pro ölçüsünü ana referans al, Android varyasyonunu da düşün",
      "Bileşenleri tekrar kullanılabilir oluştur",
      "Kayıt, katılım ve ödeme akışlarında kullanıcıya ilerleme durumu göster",
      "Dating uygulaması hissi verecek kart kaydırma veya insan eşleştirme dili kullanma"
    ]
  },
  "final_instruction_to_model": "Bu JSON'daki ürün mimarisini, görsel sistemi ve etkileşim kurallarını eksiksiz uygula. Önce bilgi mimarisini ve ekran listesini çıkar, sonra design system oluştur, ardından ekranları akış sırasına göre tasarla. Her butonun tıklama sonucunu prototipte bağla. Kullanıcı deneyimini İstanbul haritası merkezli kur. Görsel olarak referanslardaki pastel, yuvarlak, sevimli ve güven verici karakter yaklaşımını özgün biçimde yorumla; referansları kopyalama."
}
Tüm promptlar