Modern bir kütüphane için tasarlanmış, kapsamlı bir yönetim sistemi. ASP.NET Core 8.0 kullanılarak geliştirilmiş bu proje, Clean Architecture prensiplerine uygun olarak yapılandırılmıştır.
- Kitap ekleme, düzenleme ve silme işlemleri
- Detaylı kitap bilgileri (ISBN, yazar, yayınevi, vb.)
- Kopya sayısı ve mevcut kopya takibi
- Gelişmiş kitap arama ve filtreleme
- Üye kaydı ve profil yönetimi
- Aktif/Pasif üye durumu takibi
- Üye geçmişi ve ödünç alma kayıtları
- Detaylı üye arama
- Kolay ödünç verme ve iade işlemleri
- Otomatik son teslim tarihi hesaplama
- Süre uzatma özelliği
- Gecikmiş kitap takibi
- Mevcut kopya kontrolü
- .NET 8.0: En güncel .NET sürümü
- Entity Framework Core: ORM ve veritabanı işlemleri
- SQLite: Veritabanı
- AutoMapper: Nesne dönüşümleri
- Repository Pattern: Veri erişim katmanı
- Unit of Work Pattern: Transaction yönetimi
- Bootstrap 5: Modern ve responsive tasarım
- jQuery: DOM manipülasyonu ve AJAX işlemleri
- Select2: Gelişmiş arama ve seçim kutuları
- DataTables: Dinamik tablo yönetimi
- SweetAlert2: Kullanıcı bildirimleri
- Font Awesome: İkonlar
Proje, Clean Architecture prensiplerine uygun olarak üç katmanlı bir yapıda geliştirilmiştir:
- Domain Entities
- Interfaces
- Business Rules
- DTOs
- DbContext
- Repositories
- Unit of Work
- External Service Implementations
- Controllers
- Views
- ViewModels
- Filters
- Middleware
- Repository Pattern: Veri erişim katmanının soyutlanması
- Unit of Work: Transaction yönetimi
- Dependency Injection: Loosely coupled yapı
- MVC Pattern: Sunum katmanı organizasyonu
- SOLID prensiplerine uygun tasarım
- Asenkron programlama yaklaşımı
- Clean Code prensipleri
- Dependency Injection kullanımı
- Extension metodları
- Global exception handling
- Books: Kitap bilgileri
- Members: Üye bilgileri
- BookLoans: Ödünç kayıtları
- BaseEntity: Ortak alanlar (Id, CreatedAt, UpdatedAt)
GET /api/Books/Search: Kitap aramaPOST /Books/Create: Yeni kitap eklemePUT /Books/Edit/{id}: Kitap güncellemeDELETE /Books/Delete/{id}: Kitap silme
GET /api/Members/Search: Üye aramaPOST /Members/Create: Yeni üye eklemePUT /Members/Edit/{id}: Üye güncellemeDELETE /Members/Delete/{id}: Üye silme
POST /BookLoans/Create: Ödünç vermePOST /BookLoans/Return/{id}: İade almaPOST /BookLoans/Extend/{id}: Süre uzatma
- Repoyu klonlayın:
git clone https://github.com/kullaniciadi/LibraryManagement.git- Proje dizinine gidin:
cd LibraryManagement- Bağımlılıkları yükleyin:
dotnet restore- Veritabanını oluşturun:
dotnet ef database update --project src/LibraryManagement.Infrastructure --startup-project src/LibraryManagement.Web- Projeyi çalıştırın:
cd src/LibraryManagement.Web
dotnet runProje, aşağıdaki özelliklerle daha da geliştirilebilir:
- Kitap rezervasyon sistemi
- Mobil uyumlu arayüz geliştirmeleri
- Çoklu dil desteği
- Barkod/QR kod entegrasyonu
- Detaylı raporlama modülü
- İstatistiksel analizler
- Grafik ve dashboard'lar
- Excel/PDF export özellikleri
- E-posta bildirimleri
- SMS entegrasyonu
- Tarayıcı bildirimleri
- Hatırlatma sistemi
- Rol tabanlı yetkilendirme
- OAuth2 entegrasyonu
- İki faktörlü doğrulama
- Detaylı log sistemi