🍫 KitKat

Kod-tabanlı iOS design kit — token kopyala, paket seç, komponenti yapıştır. Yapı: tokens.css (token) + components.css (komponent) + kk-juice/haptic.js + starter/. Değerler derin araştırmayla doğrulandı (Apple HIG / iOS 26).

Starter Şablonu

Yeni proje 30 saniyede: starter/ klasörünü kopyala, kit dosyalarını yanına al, data-pack seç. Safe-area + yüzen tab bar + sheet + toast + ses/haptic/juice bağları hazır. Canlı gör →

Liquid Glass

iOS 26'nın materyali. Kural: glass sadece navigasyon/kontrol katmanı — içerik katmanında asla. regular (buzlu) metin taşıyan her şeyde, clear sadece zengin görsel üstünde. Yüzen tab bar kenarlardan 21px içeride.

regular (frosted)
clear
--glass-bg (regular) | --glass-bg-clear | --glass-blur:20px + saturate(160%) | --glass-edge + --glass-shadow | inset: var(--inset-float)=21px

Renk Paketi

Aktif paketin ana renkleri. Paketler tokens.css içinde data-pack ile tanımlı; 🌙/☀️ karşı-modu açar. Tüm varyantlar WCAG testinden geçti (node check-contrast.mjs).

--bg
--surface
--surface-2
--accent
--accent-2
--grad

Butonlar — Stiller

<button class="btn btn-primary"> | btn-secondary | btn-tonal | btn-outline | btn-ghost | btn-glass | btn-destructive | disabled

Butonlar — Boyut & Şekil

HIG kuralları: dokunma hedefi min 44×44px · her butonda basılma durumu şart · sayfa başına en fazla 1-2 vurgulu (primary) buton · tercih edilen aksiyonu boyutla değil stille ayır · kapsül iOS 26 varsayılan şekli. Boyut rampası: 28 / 32 / 44 / 52 / 64.

btn-sm | btn-lg | btn-pill | btn-icon | btn-fab | btn-block

Kontroller

<div class="seg">…</div>  |  <button class="toggle on">

Kartlar

Temel, elevated, glass, hero — aynı iskelet, farklı yüzey.

Temel Kart

Stroke + hafif gölge. Liste içi standart.

Elevated

Çerçevesiz, derin gölge. Öne çıkan içerik.

Glass

Blur yüzey — görselin/oyunun üstüne biner.

Hero Kart

Gradient zemin. Kampanya, etkinlik duyurusu.

Kart Kalıpları

Stat kartları

1.284
Toplam Skor
▲ %12
7🔥
Seri (gün)
▲ +1

Liste hücreleri (iOS settings tarzı)

🔊
Ses
🎨
Tema
Bizi Değerlendir

Progress kartı

Bölüm 3 — Orman

12/20 level tamamlandı

Paywall kartı

EN POPÜLER
₺129,99 /ay
  • Reklamsız deneyim
  • Tüm temalar açık
  • 2× günlük ödül

Juice — Partikül Reçeteleri

Kamera shake YOK — his partikül + pulse ile. kk-juice.js: tek canvas overlay, dört reçete. reduced-motion'da partiküller otomatik kapanır. Butonlara bas:

🪙 1.250
kkJuice.confetti(x,y) | .coinsTo(fromEl,toEl,n,cb) | .damage(x,y,"+120") | .pulse(el)

Haptic Token'ları

Ses token'larının dokunsal kardeşi — aynı isimler: tap/success/error/heavy. Web'de Vibration API (Android çalışır, iOS Safari desteklemez → sessiz no-op), Capacitor'a geçince otomatik native Taptic Engine. Masaüstünde titreşim yok — telefonda dene.

kkHaptic('tap')  — kk-haptic.js; Capacitor varsa native, yoksa navigator.vibrate

Sheet & Toast

Bottom sheet: --ease-sheet eğrisi + --r-modal üst köşeler + grabber + safe-area alt boşluk. Toast: glass pill, yay eğrisiyle üstten düşer.

Win / Lose Ekranı

Yıldızlar sırayla yay eğrisiyle pop'lar (120ms arayla). Tek vurgulu buton kuralına uygun: primary "Sonraki", secondary "Tekrar".

Bölüm Bitti!
Skor: 12.480 · En iyi: 15.200

Level Izgarası

Üç durum: tamamlandı (yıldızlar), aktif (gradient + nabız), kilitli. 56px hücre > 44px dokunma minimumu.

Oyun HUD

Glass pill sayaçlar (üst), cooldown'lu skill butonu (conic-gradient süpürme — tıkla), combo göstergesi (gradient text). Hepsi oyun sahnesinin üstüne biner — glass'ın doğru kullanım yeri.

🪙 1.250
❤️ 3
⏱ 01:24
×7 COMBO

İkon Seti

24 temel ikon — tek stroke kalınlığı (2px), yuvarlak uçlar, 24×24 grid. Tıkla = kodu kopyala. Emoji yerine bunlar; premium hissin ikon ayağı.

<svg class="ic"><use href="#i-home"/></svg>  — renk currentColor'dan gelir

Ses Token'ları

5 standart SFX — saf Web Audio, dosya yok. "Bu etkileşim = bu ses" eşleşmesi de bir tasarım kararı. Butonlara bas, dinle.

sfx('tap')  — kk-sfx fonksiyonunu kopyala, her projede aynı ses dili

Tam Sayfa: Paywall

Telefon çerçevesinde komple ekran: silik X (standart kalıp), hero, ✓ özellik listesi, seçilebilir plan kartları (yıllık öne çıkar), tam genişlik CTA, restore linki.

👑

Premium'a Geç

Reklamsız deneyim
Tüm temalar + paketler açık
2× günlük ödül
Özel profil çerçevesi
Satın alımları geri yükle · Şartlar · Gizlilik

Tam Sayfa: Onboarding

Kaydırmalı 3 tanıtım + bildirim izni sayfası (scroll-snap). Noktalar kaydırmayla güncellenir, aktif nokta hap şekline uzar. Telefonda parmakla, masaüstünde yatay scroll'la dene.

🎮

Hoş Geldin!

Yüzlerce level, günlük ödüller ve sürpriz etkinlikler seni bekliyor.

🏆

Yarış & Kazan

Arkadaşlarını geç, kupaları topla, liderlik tablosunda yüksel.

🎨

Kendi Tarzın

Temaları aç, karakterini kuşan, oyunu kendine benzet.

🔔

Ödülünü Kaçırma

Günlük hediyen hazır olunca haber verelim mi?

Input Alanları

Text field (44px, focus halkası accent'ten), hata durumu ve iOS arama çubuğu. Focus'a tıklayıp bak.

3-16 karakter, boşluksuz.
Geçerli bir e-posta gir.
<input class="input"> | .err-state | .search — focus halkası: 0 0 0 3px accent %22

Boş Durum & Skeleton

Boş durum: kesik çizgili çerçeve + tek CTA. Skeleton: shimmer süpürmesi (reduced-motion'da durur) — içerik yüklenirken layout zıplamasın.

📭

Henüz kayıt yok

İlk oyununu oyna, skorların burada biriksin.

Mikro Rozetler

Bildirim noktası, sayı rozeti, seviye/XP/yeni çipleri — hepsi paket renklerinden türer.

⭐ Lv 12 ⚡ 2.450 XP YENİ
.reldot + .dot | .count | .chip-lvl / .chip-xp / .chip-new

Motion Token'ları

Premium hissin yarısı timing. Süreler: instant 100 / fast 150 / med 250 / slow 400ms. Eğriler: --ease-out (iOS hissi), --ease-spring (taşmalı yay — ödüller), --ease-sheet (sheet açılışı). Hazır sınıflar: .kk-pop, .kk-slide-up.

transition: transform var(--dur-med) var(--ease-spring);

Tipografi

Apple Dynamic Type ramp (Large, doğrulanmış) — boyut/satır yüksekliği. 17 = iOS varsayılan metin, 11 = minimum.

Large Title 34/41
Title1 28/34
Title2 22/28
Title3 20/25
Headline 17/22 SB
Body 17/22
Callout 16/21
Subhead 15/20
Footnote 13/18
Caption1 12/16
Caption2 11/13

Display font — gömülü Unbounded (woff2, Türkçe destekli). Sadece marka/başlık/skor gibi kimlik noktalarında; gövde metni sistem fontunda kalır.

BÖLÜM BİTTİ! ⭐
SKOR 12.480 — Işıl ığşüöç
font-family: var(--font-display)  — fonts.css + fonts/ klasörünü birlikte kopyala

Ayarlar

🔊
Ses Efektleri
🎵
Müzik
📳
Titreşim
🪙 50 jeton kazandın!