diff --git a/CLAUDE.md b/CLAUDE.md index 01126d7..bf5f3f6 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -57,6 +57,7 @@ npm run db:seed npm run db:reset # kakeibo_dev + artık kakeibo_test_* veritabanlarını siler npm test # backend (cargo test, MongoDB açık olmalı) + frontend (vitest) npm run lint # clippy + oxlint +npm run icons # frontend/brand/*.svg → favicon, PWA, Apple, Tauri ikonları (rsvg-convert + magick) ``` - `npm run dev` öncesinde DB otomatik başlar (`predev`). - Yerel MongoDB host portu **27020** (27017 sistem mongod, 27018/27019 diğer projeler). diff --git a/docs/MEMORY.md b/docs/MEMORY.md index 32be0fd..e171334 100644 --- a/docs/MEMORY.md +++ b/docs/MEMORY.md @@ -1,7 +1,7 @@ # 🧠 Proje Hafızası ## ▶️ Sıradaki Adım -**Faz 2 – Adım 2:** Logo + uygulama ikonu (SVG, defter + yen/para teması), favicon, PWA ikonları (192/512, maskable), Apple touch icon. PNG üretimi için araç seçimi (rsvg-convert / sharp). +**Faz 2 – Adım 3:** `lib/api.ts` (fetch sarmalayıcı, `{error:{code,message}}` → `ApiError`), TanStack Query kurulumu, ts-rs ile Rust DTO → `frontend/src/types/` tip üretimi, oturum durumu (`useMe` / auth context). ## 📌 Alınan Kararlar - Sürüm kontrolü: Gitea (`https://gitea.ta1sph.info/suphicakir/kakeibo.git`), dal `main`. @@ -22,6 +22,7 @@ - Tasarım: ana renk indigo (`oklch(0.42 0.13 268)`), grup renkleri Okabe-Ito (needs #0072b2, wants #cc79a7, culture #009e73, unexpected #d55e00), *-fg tonları AA (açık ≥5.0, koyu ≥9) hesaplanarak doğrulandı. Gelir #15803d, gider #c62828, uyarı #b45309. - Tema seçimi localStorage (`kakeibo-theme`), yalnızca cihaz kolaylığı; ileride `users.preferences.theme` ile senkron olabilir. - `parseMoney`: virgül varsa ondalık; virgül yoksa son noktadan sonra 1–2 rakam → ondalık ("1.25" = 1,25 ₺; "1.250" = 1250 ₺). +- Logo: Taslak A (indigo zemin, spiral krem defter, ¥) seçildi. Kaynak `frontend/brand/logo.svg` + `logo-fullbleed.svg` (maskable/Apple, içerik %82). Uygulama içi `components/logo.tsx` aynı çizim (elle senkron tutulmalı). Manifest Faz 10'da (vite-plugin-pwa). - Sürümler: Rust 1.99.1 (edition 2024), Axum 0.8, React 19, Vite 8, TypeScript 7, Tailwind 4.3, shadcn 4.23, Vitest 5. ## ❓ Açık Konular @@ -49,3 +50,4 @@ ### 2026-11-12 — Faz 2 - **Adım 1:** Tailwind v4 (@tailwindcss/vite), shadcn init (radix, preset nova; `cn` paketi = shadcn'in clsx+tailwind-merge yerine geçeni, incelendi), Inter (@fontsource-variable, çevrimdışı). `index.css`: grup + durum token'ları, odak halkası, `money` utility, reduced-motion. `lib/format.ts` (+22 vitest), `lib/theme.tsx`, `lib/groups.ts`, `components/theme-toggle.tsx`. Butonlar 44/48 px'e büyütüldü. Geçici önizleme ekranı (App.tsx), 375 px headless ekran görüntüsüyle iki temada kontrol edildi. +- **Adım 2:** 3 logo taslağı (A indigo defter, B açık defter + para, C hanko) 512/64/32/16 px önizlemeyle sunuldu; kullanıcı A'yı seçti. `scripts/icons.sh` (`npm run icons`): favicon.svg/.ico, icon-192/512, icon-maskable-512, apple-touch-icon (180), brand/icon-1024 (Tauri). Maskable güvenli alan görsel olarak doğrulandı. `index.html`: ikon linkleri, theme-color, description. diff --git a/docs/PHASES.md b/docs/PHASES.md index 60e8ccb..91a68ce 100644 --- a/docs/PHASES.md +++ b/docs/PHASES.md @@ -33,7 +33,7 @@ ## Faz 2 Adımları - ✅ 1. Tailwind v4 + shadcn/ui (radix, nova), tasarım token'ları (4 grup + durum renkleri, AA doğrulandı), Inter, tema (aydınlık/karanlık/sistem), `lib/format.ts` + Vitest -- ⏳ 2. Logo ve uygulama ikonu (SVG), favicon, PWA/Apple ikonları -- ⏳ 3. `lib/api.ts`, TanStack Query, ts-rs tip üretimi, oturum durumu +- ✅ 2. Logo ve uygulama ikonu (SVG), favicon, PWA/Apple ikonları +- 🔄 3. `lib/api.ts`, TanStack Query, ts-rs tip üretimi, oturum durumu - ⏳ 4. Router (react-router), korumalı sayfalar, layout: mobil alt menü / masaüstü sol menü - ⏳ 5. Giriş / kayıt ekranları (react-hook-form + zod, beni hatırla, davet kodu), arayüz metinleri tek dosyada diff --git a/frontend/brand/icon-1024.png b/frontend/brand/icon-1024.png new file mode 100644 index 0000000..462fe4c Binary files /dev/null and b/frontend/brand/icon-1024.png differ diff --git a/frontend/brand/logo-fullbleed.svg b/frontend/brand/logo-fullbleed.svg new file mode 100644 index 0000000..2008ee3 --- /dev/null +++ b/frontend/brand/logo-fullbleed.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/frontend/brand/logo.svg b/frontend/brand/logo.svg new file mode 100644 index 0000000..fa2bd1e --- /dev/null +++ b/frontend/brand/logo.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/frontend/index.html b/frontend/index.html index 3216197..3c027b6 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -5,6 +5,14 @@ Kakeibo + + + + + + + +