Files
kolaytercih/AGENTS.md
bilalgursen b4effc8545
All checks were successful
Deploy / deploy (push) Successful in 18m31s
Refactor UI components for consistency and clarity across the application
- Updated AGENTS.md with new guidelines for UI consistency, including badge and modal styles.
- Refactored layout.tsx to improve the placement of the progressive blur effect.
- Enhanced NotFound component text for better user guidance.
- Replaced HeroFocusButton with HeroBaslik and KapanisCta in the Home component for improved clarity.
- Added SiteFooter to multiple pages for consistent footer display.
- Removed ListemSekmeleri component and adjusted ListemPage to streamline functionality.
- Updated various components to ensure consistent styling and user experience.
2026-08-02 04:28:27 +03:00

4.3 KiB
Raw Permalink Blame History

This is NOT the Next.js you know

This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in node_modules/next/dist/docs/ before writing any code. Heed deprecation notices.

Tarayıcı açma

UI değişikliklerini tarayıcıda/preview'da doğrulamaya çalışma; kullanıcı kendisi kontrol ediyor. Dev sunucusu veya browser paneli açma — sadece kod değişikliğini yap ve ne değiştiğini raporla.

Push öncesi build zorunlu

Push emri geldiğinde önce lokalde pnpm build başarıyla geçmeli; geçmeden asla push etme. Kritik detay: çalışma ağacı kirliyken build, commit'lenmemiş dosyaları da gördüğü için CI'da kırılacak bir commit'i yakalayamayabilir. Bu yüzden build'i push edilecek commit'in kendisi üzerinde doğrula (ör. geçici git worktree add <dir> HEAD + node_modules symlink'i ile). Ayrıca kısmi commit atarken değişikliğin bağımlılık kapanışını kontrol et — bir dosyanın kullandığı prop/export başka bir commit'lenmemiş dosyadan geliyorsa onları da aynı commit'e dahil et.

Badge/eyebrow rozetleri: tek kaynak SectionEyebrow

Site genelindeki tüm badge/rozet/eyebrow elemanları ana sayfadaki section başlıklarının üstünde duran rozetle birebir aynı olmalı. Kanonik bileşen src/components/pixel-decor.tsx içindeki SectionEyebrowdur (piksel imzalı PixelMark ikonu + rounded-full border border-slate-200 bg-white px-3.5 py-1.5 text-xs font-semibold uppercase tracking-[0.12em] text-primary). Yeni bir badge/eyebrow gerektiğinde SectionEyebrow kullan (className prop'u kenar boşluğu için var); @/components/ui/badge'deki Badge ile ya da elle yazılmış pill span'lerle yeni badge tasarlama. İnteraktif chip/buton pill'leri (filtre çipleri, nav butonları) bu kuralın dışındadır.

UI tutarlılığı: ortak elemanlar tek kaynaktan

Modallar arası ortak elemanlar (kapatma çarpısı, başlık düzeni vb.) görsel olarak birebir aynı olmalı. Kapatma çarpısının kanonik stili src/components/ui/dialog.tsx içindeki DialogContent varsayılan butonudur (yuvarlak, size-9, border border-slate-200, size-4 X ikonu, hover'da bg-slate-100, active:scale-[0.96]). Yeni bir modal eklerken bu varsayılanı kullan; özel yerleşim gerekiyorsa (ör. katalog-arama'da input satırının içindeki buton) showCloseButton={false} ver ama aynı class setini kopyala — farklı boyut/renk/varyantta yeni bir çarpı tasarlama. Aynı prensip diğer tekrarlanan UI parçaları için de geçerli: bir eleman iki yerde görünüyorsa stilini tek kaynaktan al veya birebir eşleştir.

CTA butonlarında ikon: yıldız yok, sağ ok metnin sonunda

Funnel CTA butonlarında ("Listemi oluştur", "Tercihlerimi belirle", giriş/ödeme CTA'ları vb.) Sparkles (yıldız) ikonu kullanılmaz. Kanonik desen: buton metni önce gelir, sonunda <ArrowRight className="size-4" aria-hidden /> durur. Yeni bir CTA butonu eklerken bu deseni uygula; metnin başına ikon koyma. Dekoratif Sparkles kullanımları (boş durum başlık ikonları, bilgi satırları) bu kuralın dışındadır — kural yalnızca aksiyon butonları/CTA linkleri içindir.

Meraklısına'daki mermaid şeması mimariyle senkron kalmalı

/meraklisina sayfasındaki sihirbaz akış şeması (src/app/meraklisina/huni-semasi.tsx içindeki SEMA sabiti) ürünün gerçek davranışının belgesidir, dekor değildir. Sihirbaz/listeleme mimarisinde davranış değiştiren her değişiklikte bu şema da aynı PR/commit içinde güncellenmeli: sihirbaz adımlarının sayısı-sırası-içeriği (alan → il → devlet/vakıf), aday havuzu kuralları, 24'lük liste iskeleti (hayal/dengeli/garanti dağılımı), havuz 24'ün altına düşünce filtre gevşetme sırası ve yapay zekânın havuz-dışına-çıkamama kuralı. Şemayı güncellerken çevresindeki unsurları da eşitle: bölümdeki anlatım metni (src/app/meraklisina/page.tsx, 4. bölüm), kabın aria-label'ı ve figcaption. Şema öğrenci diliyle kalmalı (SQL/prompt/teknik detay yok) ve ürünün risk renk dilini korumalı — kırmızı/sarı/yeşil her zaman metin etiketiyle birlikte, renk tek başına anlam taşımaz.