Files
kolaytercih/.agents/skills/kolaytercih-tasarim/SKILL.md
bilalgursen 78ad84922a
All checks were successful
Deploy / deploy (push) Successful in 6m23s
feat(tema): açık / koyu / sistem teması
- TemaSaglayici (next-themes) + alt bilgide TemaSecici
- globals.css: .dark bloğunda palet token'ları çevrilir; bileşenlere
  dark: sınıfı yazılmaz
- yüzeyler bg-white → bg-card, koyu haplar text-slate-50, SVG'lerde
  sabit renk yerine değişken
- DESIGN.md §2.3 + tasarim-denetim kuralları (yuzey-beyaz,
  koyu-hap-beyaz-yazi, dark-sinif), AGENTS.md karanlık mod bölümü
- docs: koyu tema denetimi raporu

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-05 10:20:02 +03:00

4.9 KiB
Raw Blame History

name, description
name description
kolaytercih-tasarim KolayTercih'in kendi görsel dili — piksel imzası (SectionEyebrow, PixelDivider, PixelCorner), Cal Sans/Clarity City/Bricolage tipografisi, mavi bilgi + turuncu aksiyon rengi, slate nötrler, sondaki ArrowRight'lı CTA. Yeni ekran, bileşen, kart, modal, buton, form ya da sayfa tasarlarken; mevcut arayüzü değiştirirken; "AI gibi duruyor", "sitenin diline uymuyor", "piksel detayı kaybolmuş" denince kullanılır. docs/tasarim/DESIGN.md'nin giriş kapısıdır.

KolayTercih tasarım dili

Bu proje için genel tasarım kütüphanesi (stil katalogları, palet listeleri) kullanılmaz; yön zaten belli. Kaynak tek: docs/tasarim/DESIGN.md. Bu dosya onu nasıl uygulayacağını söyler.

1. Başlamadan önce (zorunlu)

  1. docs/tasarim/DESIGN.md dosyasını tamamını oku (477 satır). Özellikle §1.1 temel his, §4 tek kaynaklar, §7 yap/yapma ve §9.2 ölç-tahmin-etme. Canlı referans ekran: /universite/ankara-universitesi.
  2. Dört satırlık brief'i doldur (DESIGN.md §9): amaç · referans ekran · tek kaynak parçalar · durumlar.
  3. Referans ekranı bul ve aç; kopyalayacağın sınıf dizilerini oradan al:
grep -rn "SectionEyebrow" src --include='*.tsx' -l          # rozetli başlık bloğu örnekleri
grep -rn "bg-orange-500" src --include='*.tsx' -l           # turuncu CTA örnekleri
grep -rn "PixelCorner\|PagePixelDivider" src -l --include='*.tsx'   # piksel imzası taşıyan ekranlar

Ana sayfa bölüm iskeleti: src/app/page.tsx (Problem bölümü, ~satır 268). Alt sayfa başlığı: src/app/meraklisina/page.tsx.

2. Yazarken

  • Kanonik parçaları içe aktar, yeniden çizme: SectionEyebrow, PagePixelDivider, PixelCorner (@/components/pixel-decor); Button (@/components/ui/button); Card (@/components/ui/card); DialogContent varsayılan çarpısı (@/components/ui/dialog); ArrowRight, XIcon (lucide-react).
  • Sınıf dizilerini DESIGN.md'den birebir kopyala; "yaklaşık aynı" yazma.
  • Her piksel süsüne o sayfaya özgü tek seed ver (mevcut seed'ler: grep -rho "seed={[0-9]*}" src | sort -u).
  • Risk rengi kullanıyorsan metin etiketini RISK_ETIKET / DILIM_ETIKET'ten (src/lib/risk.ts) al.
  • Türkçe tanımlayıcı, çevredeki kodla aynı yorum yoğunluğu (AGENTS.md).

3. Bitirmeden önce

pnpm tasarim:denetim        # sıfır hata olmadan iş bitmiş sayılmaz

Uyarıları raporda listele; hataları düzelt. Sonra 375 px kontrol notu yaz: taşma, üst üste binme, dokunma hedefi < 44 px, uzun üniversite adı. (Tarayıcı açma kuralı AGENTS.md'de; koddan çıkarım yazıyorsan "koddan çıkarım" de.)

4. Örnekler

İstek: "Bölüm sayfasına 'Bu bölümü okuyanlar ne diyor' başlığı ekle." Çıktı:

<div className="flex flex-col items-center gap-4 text-center">
  <SectionEyebrow>Öğrenci görüşleri</SectionEyebrow>
  <h2 className="font-heading text-3xl font-bold sm:text-4xl">Bu bölümü okuyanlar ne diyor?</h2>
  <p className="max-w-xl text-lg leading-relaxed text-slate-600">…</p>
</div>

İstek: "Paket sayfasına satın alma butonu koy." Çıktı:

<Button size="lg" className="h-12 w-full cursor-pointer bg-orange-500 px-8 text-white transition-colors duration-200 hover:bg-orange-600">
  Paketi al
  <ArrowRight className="size-4" aria-hidden />
</Button>

(Yanlış: başta <Sparkles />, bg-gradient-to-r, rounded-xl, "Hemen Al ✨".)

İstek: "Üniversite sayfasına URAP kartı ekle." Çıktı:

<div className="relative overflow-hidden rounded-2xl border border-slate-200 bg-card p-5">
  <PixelCorner className="absolute right-4 top-4" />
  <p className="text-xs font-semibold text-slate-500">URAP Türkiye</p>
  <p className="mt-1 font-heading text-2xl font-bold text-slate-900">18 <span className="text-base font-medium text-slate-400">/ 198</span></p>
</div>

İstek: "Modal ekle, çarpı sağ üstte olsun." Çıktı: DialogContent varsayılanını kullan; hiçbir sınıf verme. Özel yerleşim şartsa showCloseButton={false} + DESIGN.md §4.3'teki sınıf dizisi aynen.

5. Kısa yasak listesi

Badge import'u · elle pill span · CTA'da Sparkles/emoji · indigo/purple/gray/zinc · gradyan metin · parlama gölgesi · whileHover scale · her elemanda fade-up · dark: · yüzeyde bg-white (yerine bg-card, §2.3) · Inter/Roboto/serif · text-[#hex] · renk tek başına anlam.

6. Rapor

İş sonunda: kullanılan kanonik parçalar (liste) · pnpm tasarim:denetim çıktısı (hata/uyarı sayısı) · 375 px notu · DESIGN.md ile çelişen bir şey bulduysan dosya:satır ile yaz, kendi başına kuralı değiştirme.

7. Skill'i ölçme

Skill'in işe yarayıp yaramadığı evals.md içindeki üç istekle ölçülür (skill kapalı/açık karşılaştırması). Skill metnini ya da DESIGN.md'yi değiştirdikten sonra tekrar koşulur.