Kotlin Jetpack Compose ile geliştirilmiş modern telefon rehberi uygulaması.
- Kişi oluşturma (ad, soyad, telefon, fotoğraf)
- Kişi listeleme (alfabetik sıralı, ilk harfe göre gruplu)
- Kişi düzenleme ve silme
- Swipe-to-reveal aksiyonlar (sola kaydırarak edit/delete)
- Arama ve arama geçmişi
- Cihaz rehberine kaydetme
- Dinamik profil fotoğrafı gölgesi (dominant renk)
- Lottie animasyonları (kayıt başarılı)
Clean Architecture + MVVM + Event-State Pattern
app/
├── data/
│ ├── local/ # Room Database, DAO
│ ├── remote/ # Retrofit API, DTO
│ └── repository/ # Repository Implementations
├── domain/
│ ├── model/ # Domain Models
│ ├── repository/ # Repository Interfaces
│ └── usecase/ # Use Cases
├── presentation/
│ ├── components/ # Reusable UI Components
│ ├── contacts/ # Screen, ViewModel, State, Events
│ └── navigation/ # Navigation Graph
├── di/ # Hilt Dependency Injection Modules
├── core/ # Utilities, Helpers
└── ui/theme/ # Theme, Colors, Typography
| Kategori | Teknoloji |
|---|---|
| UI | Jetpack Compose, Material 3 |
| Dependency Injection | Hilt |
| Network | Retrofit, OkHttp |
| Local Database | Room |
| Image Loading | Coil |
| Animation | Lottie |
| Async | Kotlin Coroutines, Flow |
| Architecture | Clean Architecture, MVVM |
- ContactScreen: Ana ekran, kişi listesi, arama
- ProfileSheet: Kişi detay ve düzenleme
- AddContactSheet: Yeni kişi ekleme
- SwipeableContactItem: Kaydırılabilir liste öğesi
- Use Cases: CreateUser, DeleteUser, UpdateUser, GetAllUsers, SaveContactToPhone, vb.
- Models: User, ContactSection
- Room: UserEntity, UserDao, AppDatabase
- Retrofit: ContactApi, UserDto
- Repository: UserRepositoryImpl