Like a Hitster Music Game
- HTML 43.1%
- TypeScript 34.8%
- Svelte 15.3%
- Python 5.9%
- Typst 0.4%
- Other 0.5%
| app | ||
| calisma_raporlari | ||
| docs/superpowers | ||
| kural-metni | ||
| proje-dokümanları | ||
| tools | ||
| .gitignore | ||
| README.md | ||
Zaman Şeridi — kör DJ PWA'sı (monorepo)
Hitster benzeri müzik zaman çizelgesi kutu oyununun "kör DJ" uygulaması ve fiziksel üretim
hattı. Ayrıntılı kararlar proje-dokümanları/ altındadır; giriş için
proje-dokümanları/planlama/proje-tanimi.md ve belgeler.md.
Depo yapısı
| Dizin | İçerik |
|---|---|
app/ |
PWA (SvelteKit SPA, TypeScript) |
tools/ |
Python hazırlık araçları (kart verisi, QR, Spotify eşleme) — henüz boş |
deste/ |
kartlar.csv, üretilen deste JSON'ları — henüz boş |
kural-metni/ |
Tek kural metni kaynağı (kitapçık + uygulama + özet kartı) — henüz boş |
kartlar/, kitapcik/ |
Baskı şablonları ve PDF'ler (git dışı) — henüz boş |
proje-dokümanları/ |
Kararlar, isterler, planlama; design/ tasarım mockupları |
Uygulamayı çalıştırma (geliştirme)
Hedef cihaz Android + Chrome. Geliştirme 127.0.0.1 üzerinde; telefon USB ile adb reverse
ile bağlanır (proje-dokümanları/uygulama-teknoloji-stack.md Böl. 5).
# Node sürümünü sabitle (bir kez)
cd app
nvm use # .nvmrc → Node 22
# Bağımlılıklar
pnpm install
# Spotify Client ID (v0.1'de gerekir; Faz 0 için gerekmez)
cp .env.example .env.local # PUBLIC_SPOTIFY_CLIENT_ID doldurulur
# Geliştirme sunucusu
pnpm dev # http://127.0.0.1:5173
# PWA / service worker testi için derleme önizlemesi
pnpm build && pnpm preview # http://127.0.0.1:4173
Telefonu bağlamak için (geliştirme makinesinde, USB hata ayıklama açık):
sudo pacman -S android-tools # Arch
adb reverse tcp:5173 tcp:5173
adb reverse tcp:4173 tcp:4173
# Telefonda Chrome: http://127.0.0.1:5173
Kalite kapıları
cd app
pnpm check # TypeScript strict + svelte-check
pnpm lint # Prettier + ESLint
pnpm format # Prettier --write
pnpm test # Vitest (birim)
pnpm test:e2e # Playwright (akış)
CI (check → lint → test → build) ve dağıtım, v0.1 telefonda çalıştıktan sonra eklenir
(-teknoloji-stack.md Böl. 10).
Durum
- Faz 0 — iskelet: SvelteKit SPA kabuğu, tema token'ları (
src/app.css), Türkçe metin sözlüğü tohumu (src/lib/metin/tr.ts), boş açılış ekranı, test/lint iskeleti. - [~] v0.1 — Kör DJ: masaüstünde tamam, cihaz doğrulaması bekliyor. Ekranlar (Ana menü,
Hazırlık + Spotify PKCE, Tarayıcı + QR, Çevir, Çalıyor, Tur sonu, Hata akışları + Elle DJ,
Hızlı tara, Ayarlar), PWA kabuğu ve geri bildirim modülü yazıldı. Otomatik kapılar: vitest
136/136, Playwright e2e 47/47,
svelte-check0 hata, lint temiz, derleme yeşil, istemci JS 81,3 KB gzip (< 200 KB; wasm ayrı). Cihaza bağlı kalemler (yüzüstü eşiği, gerçek Spotify çalma/cihaz bulma, fener, Wake Lock, SW güncelleme, bildirim sızıntısı, performans) için bkz.docs/superpowers/v0.1-cihaz-teslim-listesi.md. Bilinen artıklar: tanıtımın ilk açılışta otomatik gösterimi ertelendi, geri bildirim olayları tüm ekranlara bağlanmadı, yer tutucu PNG ikonlar, tema flash. Ayrıntı:proje-dokümanları/planlama/kontrol_listesi.md.
Faz planı: proje-dokümanları/planlama/gelistirme-fazlari.md. Tasarım→kod köprüsü:
proje-dokümanları/design/tasarim-dokuman-iliskisi.md.