İçeriğe geç
Muhammet Şafak
en
Kapak görseli — koyu, dairesel bir tahta üzerinde düğüm-çizgi ağı; ortadaki düğüm yuvaları ve aralarındaki kanallar mor-eflatun ışıkla öne çıkıyor, bu yuvalardan bazılarında mat gri piyonlar duruyor; tahtanın geri kalanı nötr gri tonda kalıyor

Zar atmayan bir bulmaca kurmak: SilkWard'da her hamle aynı sonucu üretir

Düğüm-çizgi bir tahtada deterministik hamlelerle ilerleyen, çevrimdışı bir bulmaca oyunu; 36+6 bölümü tek bir TypeScript çekirdeği web ve mobile besliyor.

Şu an ne yapıyor

Düğüm-çizgi bir tahtada 36 bölüm + 6 gizli bölümü, şans ya da refleks olmadan tamamen deterministik hamlelerle çözdürüyor; tek TypeScript çekirdeği web (PWA) ve mobil (iOS/Android) istemcisini aynı anda besliyor. silkward.com üzerinden tarayıcıdan oynanabilir.

Başlangıç
Eylül 2026 — Eylül 2026
Labs’tan çıkış

Tür

Web Mobil

Teknolojiler

TypeScript Next.js React Expo React Native Vitest

Sıra tabanlı bulmaca benim için Hitman GO’nun bıraktığı boşluğu dolduruyordu: az sayıda kural, sıfır şans, sonucu düşünerek üretme hissi. SilkWard’ı bu boşluğa kurdum — düğüm-çizgi bir grafta ilerleyen, ağırlıkla sözsüz anlatılan bir bulmaca.

Şans yok, refleks yok, sürpriz kural yok

Bu üç ilke oyunun tasarım felsefesini özetliyor. Düğüm-çizgi grafında attığınız her adım, düşmanların da aynı deterministik kuralla ilerlemesini tetikliyor; bir bölümü kaybederseniz bunun sebebi zarın kötü gelmesi değil, hamlenin kendisi. 36 bölüm + 6 gizli bölüm üç perdeye yayılıyor.

Tek çekirdek, iki platform

Kural motoru sıfır bağımlılıkla yazıldı: ne DOM’u ne React Native’i tanıyor, yalnız saf TypeScript. Bu saflık, web (Next.js tabanlı PWA) ile mobil (Expo) istemcisinin aynı davranışı iki kez yazmadan paylaşmasını sağlıyor — kural motoru ve çözücü ortak bir çekirdek pakette, bölüm verisi ayrı bir veri paketinde, arayüz metinleri ise ayrı bir dil paketinde yaşıyor; platforma özgü olan yalnızca arayüz katmanı.

Bölüm nasıl kalibre ediliyor

Yeni bir bölüm tek dosyayı yazmakla bitmiyor: önce düzenleyici araçla tasarlanıyor, sonra veri paketine bir seviye tanımı olarak aktarılıyor. Bölümün asgari hamle sayısı elle tahmin edilmiyor — solver-cli aracının BFS ile bulduğu sayı yazılıyor, ardından bölüm tasarımı bu sayıya göre kalibre ediliyor. Bir doğrulama komutu bu sayının her değişiklikte hâlâ doğru olduğunu yeniden sınıyor, böylece “par” değeri zamanla sessizce güncelliğini yitirmiyor.

Kural motorunun kendisi de aynı disipline tabi: çekirdek pakette rastgele sayı üreteci ya da sistem saatine erişim yasak — determinizm bir yorum satırıyla değil, derleme zincirindeki bir kısıtla korunuyor. Devreye alınabilecek bir yapay zekâ görsel hattı da çekirdek koddan ayrı, yalnızca geliştirme aracı dizininde duruyor; denendi, ama çıktısı onay sürecinden geçmediği için oyuna hiç girmedi — oynanan sürümün görselleri tamamen prosedürel üretildi, oyunun runtime’ı hiçbir yapay zekâ istemcisi taşımıyor.

Ağa neredeyse hiç çıkmayan bir oyun

İlk yükleme SilkWard’ın kabuğunu (arayüz, kod, görseller) önbelleğe alıyor; o andan sonra oynanış hiçbir ağ isteği yapmıyor. Tek istisna sesler: 26 ses dosyası baştan indirilmiyor, her biri ilk çalındığı anda bir kez indirilip kalıcı önbelleğe yazılıyor — bu yüzden uçak modu güvencesi ikinci oturumdan itibaren geçerli, ilk oturumda ağ yoksa oyun sessiz çalışıyor, çökmüyor. Bu sonradan eklenen bir “çevrimdışı mod” değil, en baştan konan bir kısıt: çekirdek ve uygulama katmanında fetch kullanımı lint kurallarıyla engelleniyor, XMLHttpRequest kullanımı ise ayrı bir kaynak tarama testiyle yakalanıyor — kısıtın kendisi koda bağlı, gözle denetlenen bir söz değil.

Kayıt burada durduruldu: oyun bugün silkward.com üzerinden oynanabilir durumda, ama üzerinde yeni bir geliştirme yapılmıyor.

Diğer Kayıtlar

Tüm kayıtlar

480 altıgende 60 turda biten, tarayıcıda çevrimdışı çalışan zarsız strateji oyunu çekirdeği; Regnarium olarak yayına çıktı.

Şu an ne yapıyor

480 altıgenlik haritada azami 60 turda biten bir 4X eli yürütüyor; kurallar, harita üretimi ve rakip yapay zekâ tek bir saf TypeScript çekirdeğinde, savaş zarsız. Elinde yarım saati olan ve strateji oynamak isteyen herkes tarayıcıdan açabilir.

Web TypeScript Next.js React +2 daha
Eylül 2026 — Eylül 2026

Unix'ten oyunlaştırılmış bir komut setiyle çözülen, tamamen çevrimdışı bir gece vardiyası simülasyonu; tek oyun motoru web ve mobilde aynı anda çalışıyor.

Şu an ne yapıyor

Gece vardiyasında yedi olay tipini, Unix'ten oyunlaştırılmış yirmi dokuz komutla (gerçek bayraklar, Tab tamamlama, man dahil) çözdürüyor; web (PWA) ve mobil (iOS/Android) sürümü aynı oyun motorunu paylaşıyor. sysadmincrisis.com üzerinden tarayıcıdan oynanabilir.

Web Mobil TypeScript Next.js React +3 daha
Eylül 2026 — Eylül 2026

Her araç marka-modelinin kendi kulübü olduğu, ICE ile EV'yi aynı çatıda tutan Reddit-benzeri topluluk platformu; API, web ve mobil paralel yürüyor.

Şu an ne yapıyor

Her araç marka-modelinin kendi kulübü olduğu topluluk platformu; kimlik, içerik, bildirim ve moderasyon akışları tek şemalı API üzerinde yürüyor, web ve mobil istemciler aynı şemayı paylaşıyor. Aracının modeline özel bir topluluk arayan kullanıcı bugün katılabilir.

Web Mobil Laravel PHP PostgreSQL +6 daha
Temmuz 2026 — Eylül 2026

Sitede Ara

Yazı, proje ve sayfalarda arama yapmak için yazmaya başlayın.

Esc ile kapat Pagefind ile güçlendirildi