TMDB keşfi, favoriler, oyuncu taraması ve Gemini destekli film asistanını bir araya getiren modern Flutter mobil uygulaması
Türkçe · English
CineFlow, kullanıcıların film ve TV dizilerini keşfetmesini, favori içeriklerini saklamasını, oyuncuları incelemesini ve doğal dil ile içerik önerileri almasını amaçlayan çok ekranlı bir Flutter mobil uygulamasıdır.
Projeyi güçlü kılan nokta sadece TMDB listeleme ekranları değildir. Uygulama, Gemini destekli film asistanı, favori yönetimi, fragman oynatma, oyuncu keşfi, çoklu dil altyapısı, bildirim tercihleri ve karanlık temalı ürün tasarımı gibi birbirini tamamlayan mobil ürün katmanlarını bir araya getirir.
CineFlow mobil uygulama videosunu izle
Video; film ve TV keşfi, favoriler, oyuncular, Gemini destekli asistan, detay sayfaları, profil ve ayarlar akışını göstermektedir.
- Film keşfi ve arama
- TV dizi keşfi ve arama
- Grid / liste görünümü
- Favori film ve favori dizi yönetimi
- Oyuncu keşfi ve oyuncu sıralama seçenekleri
- Film ve dizi detay ekranları
- YouTube fragman oynatma
- Gemini destekli film/dizi öneri asistanı
- Türkçe ve İngilizce dil desteği
- Bildirim tercihleri ve oynatma ayarları
- Yerel saklama ve kullanıcı tercihleri
- GetX tabanlı durum yönetimi ve yönlendirme
| Filmler | TV Dizileri | Favoriler |
|---|---|---|
![]() |
![]() |
![]() |
| Oyuncular | Film Asistanı | Film Detayı |
|---|---|---|
![]() |
![]() |
![]() |
| TV Dizi Detayı | Profil | Ayarlar |
|---|---|---|
![]() |
![]() |
![]() |
Ana sayfa film ve TV içeriklerini sekmeli biçimde sunar. Arama alanı, filtreler, grid/liste görünümü ve kaydırdıkça daha fazla içerik yükleme davranışı ürün deneyiminin temelini oluşturur.
Kullanıcılar seçtikleri film ve dizileri favorilere ekleyebilir. Bu modül içerikleri hızlıca tekrar erişilebilir hâle getirir ve uygulamanın tekrar kullanım değerini yükseltir.
Oyuncu ekranı TMDB kişi verileri üzerinden popüler isimleri, aramayı ve sıralamayı destekler. Böylece uygulama sadece içerik kartlarına değil, oyuncu odaklı keşfe de açılır.
Gemini destekli asistan, kullanıcıdan doğal dilde istek alır. Örneğin “karanlık atmosferli ve ters köşeli 5 film öner” gibi bir isteme sohbet yanıtı üretir. Ardından öneri metnindeki yapımları TMDB aramasıyla eşleştirerek uygulama içi içerik akışına bağlar.
Film ve TV detay ekranlarında başlık, puan, özet, yayın tarihi ve ilgili medya görünür. Film detayında ayrıca fragman deneyimi sunulur.
Profil, favorilere erişim ve kullanıcı kartı sunar. Ayarlar ekranında dil, bildirimler, fragman otomatik oynatma ve video kalitesi gibi tercihler yönetilebilir.
flowchart TD
A[Flutter App] --> B[GetX State Management]
A --> C[TMDB API Service]
A --> D[Gemini Service]
A --> E[Local Storage]
A --> F[YouTube Trailer Player]
A --> G[Notification Service]
E --> E1[SharedPreferences]
E --> E2[SQLite / Sqflite]
B --> H[Movies]
B --> I[TV Shows]
B --> J[Favorites]
B --> K[People]
B --> L[Assistant]
B --> M[Profile & Settings]
- Flutter
- Dart
- Material UI
- GetX
- TMDB API
- Gemini API
- HTTP
- YouTube Player
- SQLite (
sqflite) - SharedPreferences
- Local notifications
- Connectivity check
- Image picker
- Share support
- Cached network image
- Lottie
- Shimmer
- Flutter staggered grid view
- Pull to refresh
- Flutter SVG
- Flutter SDK
- Dart SDK
- Android Studio veya VS Code
- Android Emulator / fiziksel cihaz
git clone https://github.com/BurakKocDev/cineflow_app.git
cd cineflow_app
flutter pub get
cp .env.example .env.env dosyasına kendi anahtarlarını gir:
GEMINI_API_KEY=your_gemini_api_key_here
TMDB_API_KEY=your_tmdb_api_key_hereArdından uygulamayı çalıştır:
flutter runUygulama iki dış anahtara dayanır:
TMDB_API_KEY→ içerik verileri içinGEMINI_API_KEY→ yapay zeka asistanı için
Gerçek .env dosyası repoya eklenmez. Sadece .env.example şablonu bulunur.
Gemini kurulumu için repodaki GEMINI_KURULUM.md belgesine bakılabilir.
cineflow_app/
├── lib/
│ ├── bindings/
│ ├── constants/
│ ├── controllers/
│ ├── localization/
│ ├── models/
│ ├── notifications/
│ ├── screens/
│ ├── services/
│ └── widgets/
├── assets/
│ ├── animations/
│ ├── icons/
│ ├── images/
│ └── translations/
├── .env.example
├── pubspec.yaml
├── README.md
└── README.en.md
- Sadece tek ekranlı demo değil, gerçek ürün akışına sahip çok sekmeli mobil yapı
- Yapay zeka özelliğinin görsel vitrin olmaktan çıkıp uygulama akışına bağlanması
- Kullanıcı deneyimini destekleyen favoriler, ayarlar ve detay ekranları
- Keşif, içerik detayı ve oyuncu bilgisi arasında dengeli gezinme
- Portföy için teknik olduğu kadar ürün düşüncesi de gösteren bir örnek
- İçerik verileri TMDB kapsama ve güncelliğine bağlıdır.
- Asistan kalitesi Gemini yanıt kalitesine ve anahtar yapılandırmasına bağlıdır.
- Şu an kullanıcı hesabı / gerçek backend oturumu yerine istemci taraflı deneyim ağırlıklıdır.
- Favori ve tercih davranışları mobil cihaz içi saklamaya dayalıdır.
- Bazı medya görselleri ve açıklamalar üçüncü taraf kaynaklardan gelir.
CineFlow, modern Flutter ile yalnızca görsel olarak hoş değil; keşif, öneri, kişiselleştirme ve ayar deneyimini birleştiren ürün seviyesinde bir mobil uygulama geliştirebildiğini göstermek için hazırlanmıştır.








