Genel mimari
Pivotstat iki ana bileşenden oluşur:
| Katman | Teknoloji | Görev |
|---|---|---|
| Frontend | Next.js 16 (React, TypeScript) | Maç listesi, detay, blog, admin |
| Backend | FastAPI (Python 3.11) | REST API, ML inference, scraper orchestration |
| Veritabanı | PostgreSQL | Maç, oran, istatistik, ML tahmin arşivi |
| Dağıtım | Docker Compose | Backend + frontend konteynerleri |
Backend yapısı
routers/— HTTP endpoint'leri (maç, bülten, ML, blog, admin)ml/— Tahmin motorları, piyasa modeli, eğitim bundle'larıpipelines/— Mackolik implied, canlı tarama, motor kayıtintegrations/— API-Football istemcisi, kadro servisiscripts/— Günlük sync (fikstür, puan durumu, takım listesi)
Frontend yapısı
- App Router ile sayfa bazlı routing
- Maç detay: sekmeli yapı (oran, piyasa, tahmin, istatistik, kadro…)
- Auth gate ile üye girişi; admin paneli ayrı rol
Veri akışı
- Scraper'lar Mackolik / İddaa verisini PostgreSQL'e yazar
- API-Football sync fikstür, kadro, puan durumu günceller
- Kapanış oranları gelince ML pipeline devreye girer
- Frontend API'den canlı veri çeker; ağır hesap backend'de kalır
Neden bu stack?
- Python — scikit-learn, pandas ile ML ekosistemi olgun
- FastAPI — hızlı geliştirme, tip güvenliği, async hazır
- Next.js — SEO, SSR metadata, performanslı React
- PostgreSQL — JSONB (motor tahminleri), güçlü sorgular, güvenilirlik
Sonraki yazı: veri kaynaklarımız ve arşiv derinliği.