01 · Apa ini
Ketikaria (masih nama sementara) adalah game mengetik untuk anak-anak.
Game ini dibuat untuk anak usia 4 sampai 10 tahun, termasuk yang belum bisa membaca. Slogannya "Tekan. Dengar. Tumbuh." Karakter kecil bernama Lumi menemani mereka bermain.
02 · Untuk anak yang belum bisa membaca
Kalau anak belum bisa membaca instruksi, instruksinya harus bersuara.
Prinsip yang saya pakai:
- setiap kontrol punya ikon, label, dan contoh suara
- setiap tombol berukuran minimal 56 px
- suara menunggu 1,2 detik, supaya anak yang masih lambat tidak terpotong
- tidak ada alarm, kata "Gagal", persentase akurasi, atau confetti
- mode permainan tidak dikunci berdasarkan usia
Progresnya berupa kebun kecil: setiap lima biji menumbuhkan satu tanaman.
03 · Suara tanpa file audio
Tidak ada satu pun file audio di game ini.
Narasinya memakai suara Bahasa Indonesia bawaan perangkat lewat speechSynthesis. Musik dan efek suaranya dibuat langsung di browser dengan oscillator Web Audio. Volumenya turun saat narasi berjalan, dan suaranya berhenti saat tab disembunyikan. Game ini juga mengikuti pengaturan reduced motion.
const ctx = new AudioContext();
const osc = ctx.createOscillator();
const gain = ctx.createGain();
osc.frequency.value = 523.25; // C5
gain.gain.setValueAtTime(0.2, ctx.currentTime);
gain.gain.exponentialRampToValueAtTime(0.001, ctx.currentTime + 0.3);
osc.connect(gain).connect(ctx.destination);
osc.start();
osc.stop(ctx.currentTime + 0.3);04 · Stack yang kecil
Game ini dibangun dengan React 19, TypeScript, Vite, dan CSS biasa.
Kontennya berupa katalog JSON, dengan 56 item di draf saat ini. Progres disimpan di localStorage, dan Playwright mengecek alur permainannya. Tidak ada backend dan tidak perlu login.
05 · Jebakan saat deploy
Game ini dirilis ke Cloudflare Pages lewat Direct Upload.
Ada dua hal yang saya pelajari. Pertama, tanpa --force, Wrangler bisa membuat proyek Workers, bukan Pages. Kedua, proyek Direct Upload tidak bisa diubah ke integrasi Git belakangan. Jadi, tentukan cara deploy-nya sebelum upload pertama.
npx wrangler pages deploy dist --project-name ketikaria --force06 · Belum selesai
Game ini belum siap diuji coba.
Yang masih kurang: paket suara dengan dua karakter, onboarding bernarasi, dan uji coba dengan anak-anak di perangkat sungguhan. Itu target berikutnya, belum peluncuran.
