İçeriğe atla
md ~/projeler/adam-asmaca
Proje arşivi

2026Canlı

Adam Asmaca

  • JavaScript
  • HTML
  • CSS
  • Fetch API
  • JSON
  • Node.js Test Runner
  • Vercel

Genel bakış

Tarayıcıda oynanan adam asmaca oyunu. 10 kategoride 1.000 Türkçe ve 1.000 İngilizce kelime var. Ekrandaki ya da bilgisayar klavyesiyle oynanıyor, Türkçe harfleri (ı/i, ç, ğ, ö, ş, ü) doğru işliyor. İpucu butonu, uzun kelimelerde açık başlayan harfler, seri takibi, koyu/açık tema ve ekran okuyucu desteği var.

01 · Problem

Çoğu adam asmaca örneği kısa bir İngilizce kelime listesiyle geliyor. Kelimeler çabuk tekrar ediyor ve Türkçe oynanamıyor. JavaScript'in varsayılan büyük/küçük harf çevirisi Türkçede yanlış çalışıyor ("I" harfini "i" yapıyor). Uzun ve zor kelimelerde oyuncuya yardım eden bir şey de yok.

02 · Çözüm

10 kategoride iki dilde 2.000 kelimelik, doğrulanmış JSON listeleri hazırladım. Listeler fetch ile sadece seçilen dil için yükleniyor. Kelimeler Fisher-Yates ile karıştırılmış bir "torbadan" çekiliyor, böylece kategori bitmeden tekrar gelmiyor. Harf çevirisi dile göre yapılıyor (toLocaleLowerCase('tr')). Bir hak karşılığında harf açan ipucu butonu ekledim, uzun kelimeler de bir iki harfi açık başlıyor. Oyun kuralları arayüzden ayrı yazıldı ve birim testleriyle doğrulandı. Dosyadan ve tarayıcı kaydından gelen veri doğrulanıyor, site güvenlik başlıklarıyla (CSP) yayınlanıyor.

03 · Sonuç

hangman.miracdeprem.com adresinde yayında, telefonda ve masaüstünde çalışan bir oyun. 21 birim testi kuralları, 2.000 kelimenin doğruluğunu ve kayıt işlemlerini kapsıyor. 14 harflik kelimeler bile küçük telefon ekranında tek satıra sığıyor. Oyun portfolyo sitemle aynı temayı kullanıyor.