Kişisel aktivitelerinizi (Film, Dizi, Oyun, Kitap vb.) takip etmenizi, istatistiklerini görmenizi ve yeni içerik önerileri almanızı sağlayan modern bir masaüstü uygulaması.
📷 [EKRAN GÖRÜNTÜSÜ EKLE: Ana sayfa görünümü - KPI kartları ve aktivite listesi]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: Liste sayfası - Filtreleme ve aktivite kartları]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: İstatistik sayfası - Grafikler ve tablolar]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: Öneri sayfası - Film/Dizi/Oyun/Kitap kartları]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: Rastgele öneri popup penceresi]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: Yıllık ve aylık planlar görünümü]
📷 [EKRAN GÖRÜNTÜSÜ EKLE: İki dönem karşılaştırma görünümü]
- Ekleme/Düzenleme/Silme: Film, dizi, oyun, kitap ve özel kategoriler ekleyin
- Puanlama: 1-10 arası puanlama sistemi
- Tarih Aralığı: Başlangıç ve bitiş tarihi desteği (diziler için ideal)
- Yorum: Her aktiviteye detaylı yorum ekleyin
- Dinamik Türler: Kendi özel kategorilerinizi oluşturun
- Özet Kartlar (KPI): Toplam faaliyet, ortalama puan, en aktif kategori
- Görsel Grafikler: Bar ve pasta grafikleri ile dağılım analizi
- Dönemsel Filtreleme: Ay, yıl veya tüm zamanlar bazında analiz
- Detay Görünümü: Kategoriye tıklayarak detaylı liste
- Çoklu Kategori: Film, Dizi, Oyun, Kitap önerileri
- Dönem Seçenekleri:
- 📅 Bu Ayın Trendleri
- 🆕 Yeni Çıkanlar
- 🏆 Tüm Zamanların En İyileri
- ⭐ Mutlaka İzlenmeli
- 🎭 Kült Klasikler
- 💎 Gizli Hazineler
- 🔜 Yakında Gelecekler
- Tür Filtreleme: Her kategori için ayrı tür seçenekleri
- 🇹🇷 Türkçe Yapımlar Filtresi: Sadece Türk yapımlarını görün
- 🎲 Rastgele Öneri: Karar veremediğinizde tek tıkla rastgele öneri alın
- 🖼️ İçerik Önizleme: Bir karta tıklayınca API'den zenginleştirilmiş detay (oyuncular, tür, süre vb.) gösteren önizleme penceresi
- ➕ Sayfalama: "Daha Fazla Yükle" ile yeni içerikler yükleyin
- Aylık Planlar: Her ay için hedefler belirleyin
- Yıllık Planlar: Uzun vadeli hedefler oluşturun
- İlerleme Takibi: %0-100 arası ilerleme çubuğu
- Durum Yönetimi: Planlandı, Devam Ediyor, Tamamlandı, Arşivlendi
- Öncelik Seviyeleri: Düşük, Orta, Yüksek
- Dönem Karşılaştırma: İki farklı dönemin aktivitelerini karşılaştırın
- Görsel Analiz: Hangi dönemde neyi daha çok yaptığınızı görün
- Detaylı Rapor: Seçilen dönemin PDF raporunu oluşturun
- Otomatik Kayıt: Masaüstüne otomatik kayıt
- Python 3.10 veya üzeri
- pip (Python paket yöneticisi)
git clone https://github.com/Yusufygc/Faaliyet_Takip_Programi.git
cd Faaliyet_Takip_Programipython -m venv venv
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activatepip install -r requirements.txtpython main.py.env dosyası kullanılmaz. Anahtarlar uygulama içinden, Ayarlar → API Anahtarları
bölümünden girilir ve işletim sisteminin güvenli kasasında (Windows Credential
Manager / macOS Keychain / Linux Secret Service — Python keyring paketi üzerinden)
şifreli olarak saklanır; arayüzde tekrar düz metin olarak gösterilmez.
API Anahtarı Alma:
- TMDB: https://www.themoviedb.org/settings/api
- RAWG: https://rawg.io/apidocs
- Google Books: API anahtarı gerektirmez (ücretsiz)
Mimari: QML Views/Modals ↔ Python Bridges ↔ Database Repositories & Services ↔ SQLite / Harici API'ler
P001-Faaliyet_Takip_Programi/
├── main.py # PySide6 başlatıcı, QML engine + Bridge enjeksiyonu
├── constants.py # Sabit değerler
├── models.py # Veri modelleri (Activity, Plan, Folder, ActivityFilter)
├── logger_setup.py # Loglama yapılandırması
│
├── qml/
│ ├── Main.qml # Ana pencere kabuğu, TitleBar, Sidebar, Toast
│ ├── theme/ # Theme.qml singleton (renk/tipografi), ikon fontu
│ ├── views/ # ActivityListView, StatsView, DiscoverView, CompareView, PlansView, SettingsView
│ ├── modals/ # ActivityFormModal, MediaPreviewModal, RandomPickModal, PdfExportModal...
│ └── components/ # CustomButton, ComparePanel, CategoryMonthHeatmap, CategoryPieChart...
│
├── bridges/ # QML ↔ Python köprüleri (Q_PROPERTY / Slot / Signal)
│ ├── activity_bridge.py
│ ├── stats_bridge.py
│ ├── plan_bridge.py
│ ├── discover_bridge.py
│ ├── compare_bridge.py
│ ├── settings_bridge.py
│ └── app_bridge.py
│
├── database/ # Veritabanı katmanı
│ ├── connection.py # SQLite bağlantısı
│ ├── repository.py # ActivityRepository — CRUD + istatistik sorguları
│ ├── plan_repository.py
│ ├── type_repository.py
│ └── recommendation_repository.py # Öneri önbelleği
│
├── services/ # Harici servis entegrasyonları
│ ├── _base_api_service.py # Ortak HTTP istemcisi (retry, throttle, keyring okuma)
│ ├── movie_api_service.py / series_api_service.py # TMDB
│ ├── game_api_service.py # RAWG
│ ├── book_api_service.py # Google Books
│ ├── pdf_service.py
│ └── recommendation_config.py
│
├── icons/ fonts/ assets/ # Statik kaynaklar
└── tests/ # pytest test paketi
| API | Kullanım Alanı | Ücretsiz Limit |
|---|---|---|
| TMDB | Film ve Dizi verileri | Günlük ~1000 istek |
| RAWG | Oyun verileri | Aylık 20,000 istek |
| Google Books | Kitap verileri | Sınırsız (anonim) |
| Teknoloji | Kullanım |
|---|---|
| Python 3.10+ | Ana programlama dili |
| PySide6 (QtQuick/QML) | GUI framework |
| SQLite | Yerel veritabanı |
| Requests | HTTP istekleri |
| keyring | API anahtarlarının OS kasasında şifreli saklanması |
| ReportLab | PDF oluşturma |
🎬 Film Türleri: Aksiyon, Komedi, Dram, Korku, Bilim Kurgu, Romantik, Animasyon, Gerilim, Suç, Belgesel, Fantezi, Macera, Savaş, Western
📺 Dizi Türleri: Aksiyon & Macera, Komedi, Dram, Suç, Belgesel, Aile, Animasyon, Gizem, Bilim Kurgu & Fantezi, Reality
🎮 Oyun Türleri: Aksiyon, RPG, Strateji, Spor, Yarış, Macera, Bulmaca, Shooter, Platform, Simülasyon, Dövüş, Indie
📚 Kitap Türleri: Dünya Klasikleri, Türk Klasikleri, Gerilim, Romantik, Bilim Kurgu, Fantastik, Korku, Tarih, Gizem, Polisiye, Biyografi, Felsefe, Psikoloji, Kişisel Gelişim
Öneriler her seçim/filtre değişiminde doğrudan ilgili API'den (TMDB, RAWG, Google Books) taze olarak çekilir; ayrı bir yerel önbellekleme katmanı yoktur.
- Windows:
%LOCALAPPDATA%\FaaliyetTakip\faaliyetler.db
app.logdosyasında uygulama logları tutulur
- Bu repoyu fork edin
- Feature branch oluşturun (
git checkout -b feature/yeni-ozellik) - Değişikliklerinizi commit edin (
git commit -m 'Yeni özellik eklendi') - Branch'inizi push edin (
git push origin feature/yeni-ozellik) - Pull Request açın
- TMDB - Film ve dizi verileri için
- RAWG - Oyun verileri için
- Google Books - Kitap verileri için
- PySide6 (Qt for Python) - GUI framework için
Sorularınız veya önerileriniz için issue açabilirsiniz.
⭐ Bu projeyi beğendiyseniz yıldız vermeyi unutmayın!