Müslümanların birlikte yaptıkları manevi paylaşımları organize eden Flutter uygulaması
Hatma, İslami manevi pratikleri grup olarak organize etmek için tasarlanmış bir mobil uygulamadır. Temel üç kullanım:
| Özellik | Açıklama |
|---|---|
| Hatim | 30 cüzlük Kur'an okumasını grup üyelerine böler; tamamlanan cüzleri takip eder |
| Sure Sayımı | Belirli bir surenin (Yâsin, Fâtiha, İhlâs vb.) toplu okunmasını grup olarak biriktirir |
| Özel Toplama | Kullanıcı tanımlı zikir, dua veya salavat sayımları |
Her toplama bir kişiye ya da vefat etmiş bir yakına ithaf edilebilir.
Toplamalar özel (sadece davet kodu ile) ya da herkese açık olabilir; açık toplamalar Keşfet sekmesinde listelenir.
- Hatim, Sure Sayımı ve Özel Toplama oluşturma ve yönetme
- Cüz atama / üstlenme akışı (Hatim için 30-cüz grid)
- Gerçek zamanlı grup sohbeti
- Keşfet — herkese açık toplamalar
- İthaf & niyet notu (manevi merkez)
- Günün Ayeti ve Günün Hadisi (bundle JSON, her gün deterministic rotasyon)
- Kur'an Okuyucu — Uthmani yazı + Türkçe meal
- Bireysel cüz takibi (yerel veritabanı)
- Suistimal koruması (yeni hesap kısıtlaması, günlük sınır, raporlama)
- Türkçe & İngilizce dil desteği
| Katman | Teknoloji |
|---|---|
| Framework | Flutter (latest stable) |
| Dil | Dart ≥ 3.4 |
| State Management | flutter_riverpod + riverpod_generator |
| Navigasyon | go_router |
| Backend | Firebase (Auth · Firestore · FCM · Storage · Analytics · Crashlytics) |
| Yerel Veritabanı | drift (cüz takibi, ayet cache) |
| Model Üretimi | freezed + json_serializable |
| Yerelleştirme | flutter_localizations + intl |
| UI | google_fonts · flutter_svg · shimmer |
lib/
├── core/ # Tema, router, sabitler, uzantılar
├── data/ # Modeller, repository'ler, Firebase servisler
├── features/ # Her özellik kendi presentation/application/domain yapısında
│ ├── auth/
│ ├── home/
│ ├── collections/
│ ├── discover/
│ ├── quran/
│ ├── personal/
│ ├── chat/
│ └── settings/
└── shared/ # Ortak widget'lar, pattern'ler, dialog'lar
Tüm mimari kararlar CLAUDE.md dosyasında dokümante edilmiştir.
- Flutter SDK ≥ 3.x
- Dart ≥ 3.4
- Firebase projesi (Authentication, Firestore, Storage, FCM etkin)
# 1. Repoyu klonla
git clone https://github.com/muhammeteminayhan/hatma.git
cd hatma
# 2. Bağımlılıkları yükle
flutter pub get
# 3. Firebase yapılandırması
# android/app/google-services.json → kendi Firebase projen için indir
# ios/Runner/GoogleService-Info.plist → kendi Firebase projen için indir
# Ardından:
dart pub global activate flutterfire_cli
flutterfire configure
# 4. Kod üretimi çalıştır
dart run build_runner build -d
# 5. Çalıştır
flutter runNot:
google-services.jsonveGoogleService-Info.plistbu repoda örnek olarak bulunmaktadır. Üretim ortamı için kendi Firebase projenizin dosyalarını kullanın.
firestore.rules dosyası repoda bulunmaktadır. Firebase konsolundan direkt deploy edebilirsiniz:
firebase deploy --only firestore:rulesBu proje kişisel bir uygulama projesidir. Hata bildirimleri ve öneriler için Issues açabilirsiniz.