Flutter Kurulum
ChatCal mobil uygulamasını lokal ortamda çalıştırma — env, simulator ve backend bağlantısı.
Bu rehber chatcalmobile/ altındaki Flutter uygulamasını geliştirme ortamında ayağa kaldırmak içindir.
Gereksinimler
| Araç | Sürüm / not |
|---|---|
| Flutter SDK | Dart ^3.10 (chatcalmobile/pubspec.yaml) |
| Xcode | iOS simulator veya cihaz |
| Android Studio | Android emulator veya cihaz |
| Node.js 20+ | Yalnızca docs sitesi için |
| MongoDB | Yalnızca lokal backend geliştirme için |
Flutter kurulumu: docs.flutter.dev/get-started/install
Ortam değişkenleri
Env dosyaları git'te takip edilmez. İlk kurulumda:
cd chatcalmobile
cp .env.example .env.developmentRelease build için ayrıca .env.production gerekir (pubspec.yaml assets altında tanımlı).
| Değişken | Zorunlu | Açıklama |
|---|---|---|
BACKEND_URL | Evet | NestJS API base URL (sonunda / yok) |
REVENUECAT_API_KEY | Hayır* | RevenueCat public SDK key |
MIXPANEL_TOKEN | Hayır | Analytics |
GOOGLE_IOS_CLIENT_ID | Hayır | Google Sign-In (iOS) |
GOOGLE_WEB_CLIENT_ID | Hayır | Google Sign-In (server) |
* Abonelik ve paywall testi için gerekli.
Production backend (varsayılan fallback): https://c.berkeugur.cloud
Lokal backend:
BACKEND_URL=http://localhost:3000Uygulamayı çalıştırma
cd chatcalmobile
flutter pub get
flutter devices # bağlı cihaz / emulator listesi
flutter run # varsayılan cihaz
flutter run -d <device> # belirli cihaziOS Simulator
open -a Simulator
cd chatcalmobile && flutter runApple Sign-In simulator'da sınırlı olabilir; gerçek cihazda test etmek daha güvenilir.
Android Emulator
Android Studio → Device Manager → emulator başlat, ardından cd chatcalmobile && flutter run.
Lokal backend bağlantısı
Flutter uygulaması tek başına çalışır; ancak auth, chat ve veri senkronu için backend gerekir.
# Terminal 1 — backend (repo kökünden)
cd chatcalbackend
npm install
# .env dosyasını oluşturun (README'deki env listesi)
npm run start:dev
# Terminal 2 — Flutter
cd chatcalmobile
# .env.development içinde BACKEND_URL=http://localhost:3000
flutter runMongoDB lokal çalışıyor olmalı. Backend detayları: monorepo içinde chatcalbackend/README.md.
Sık kullanılan komutlar
cd chatcalmobile
flutter analyze
flutter test
flutter gen-l10n # ARB değişikliği sonrası (genelde build otomatik tetikler)i18n
Kullanıcıya görünen metinler:
chatcalmobile/lib/l10n/app_tr.arbchatcalmobile/lib/l10n/app_en.arbchatcalmobile/lib/l10n/app_es.arb
Generated dosyalar (app_localizations*.dart) elle düzenlenmez.
Sorun giderme
| Sorun | Kontrol |
|---|---|
| API 401 / bağlantı hatası | BACKEND_URL doğru mu, backend ayakta mı |
| RevenueCat uyarısı | REVENUECAT_API_KEY boş — uygulama yine de açılır |
| Env yüklenmedi | .env.development chatcalmobile/ altında mı, pubspec.yaml assets'te tanımlı mı |
| Google giriş görünmüyor | AppFeatureFlags.enableGoogleSignIn — main.dart içinde |
İlgili sayfalar
- Başlangıç — repo yapısı özeti
- Flutter Mimari — katmanlar ve veri akışları
- API Reference — backend endpoint playground
Repo kökünde ayrıca AGENTS.md (AI agent talimatları) ve docs/architecture.md (tam mimari referans) bulunur.