2.0 KiB
2.0 KiB
Admin Panel Baslangic Plani
Bu plan AGENTS.md, ADMIN_PANEL_PROMPT.md ve RULES.md uyumunda hazirlandi.
1) Onerilen Klasor Yapisi
admin-panel/src/apiadmin-panel/src/componentsadmin-panel/src/pagesadmin-panel/src/storesadmin-panel/src/typesadmin-panel/src/utils
2) Teknoloji Onerisi
- React + TypeScript + Vite
- React Router (route guard)
- TanStack Query (server state)
- Zustand (auth/UI state)
3) Ekran Akislari
GET /login-> basarili login ->/dashboardGET /dashboard-> ozet kartlar + son image bilgisiGET /images-> liste + detay linkiGET /images/:id-> variant stream previewGET /health-> backend durum gostergesiGET /settings-> altyapi/TODO
4) Auth ve API Client Mimarisi
- Merkezi
apiRequestfonksiyonu ile tum cagrilar Authorization: Bearer <access_token>otomatik ekleme- 401 durumunda tekil refresh (deduplicate)
- Refresh basarisizsa logout + login sayfasina yonlendirme
- Backend'in global JSON error formatinin normalize edilmesi
5) Component Listesi
AppShellProtectedRouteQueryState- sayfa bazli form ve tablo bilesenleri
6) State Management Yaklasimi
stores/auth-store.ts: user + token + hydrate + clear- server state: React Query ile cache/refetch
7) Route Guard Yaklasimi
- Public:
/login - Private:
/dashboard,/images,/images/:id,/health,/settings - Token yoksa
/loginredirect
8) UI/UX Prensipleri
- Sidebar + topbar layout
- Loading / empty / error state ayrimi
- Basit responsive duzen
9) Guvenlik Onlemleri
- Tokenlar central store + storage ile yonetilir
- 401/403 ayrimi API error code ile gorunur
- Hassas veriler UI'da loglanmaz
10) Gelistirme Roadmap
- MVP auth + dashboard + images list/detay (tamamlandi)
- Pagination/filter/sort + detay metadata (arama/format filtresi + client pagination tamamlandi)
- Role-based guard + kullanici yonetimi (
/users) - UI sertlestirme (skeleton, toast, empty state varyasyonlari)
- Testler (auth flow, route guard, api error handling)