ilk commit

This commit is contained in:
hOLOlu
2026-05-04 01:23:36 +03:00
parent 5f33557f2d
commit f9210169b3

60
README.md Normal file
View File

@@ -0,0 +1,60 @@
# hOLOlu Download Manager (hDM)
Modern, hızlı ve kullanıcı dostu, .NET 8 ve WPF tabanlıık kaynaklı bir indirme yöneticisidir.
## 🚀 Öne Çıkan Özellikler
* **Segmentli İndirme:** Dosyaları parçalara bölerek maksimum bant genişliği ile indirme sağlar.
* **Tarayıcı Entegrasyonu:** Özel browser eklentisi (Chrome/Edge) ve `BrowserBridge` teknolojisi ile tarayıcıdaki linkleri otomatik yakalar.
* **Canlı Hız Grafiği:** Ana pencerenin üst kısmında, son 30 saniyelik toplam indirme hızını gösteren sağdan sola kayan interaktif grafik.
* **Akıllı Dosya Adı Algılama:** Karmaşık yönlendirmeler (redirect) ve dinamik URL'lerden gerçek dosya adını otomatik tespit eder.
* **Sistem Tepsisi (Systray) Desteği:** Uygulama kapandığında sistem tepsisine küçülür, arka planda çalışmaya devam eder.
* **Gelişmiş Sıralama ve Filtreleme:** İndirmeleri tarihe, boyuta, duruma veya isme göre akıllıca sıralar; kategori bazlı filtreleme yapar.
* **Kullanıcı Arayüzü Özelleştirme:**
*ık/Koyu tema desteği.
* Kategori panelini gizleme/gösterme seçeneği.
* Sütun genişliklerini otomatik kaydetme ve geri yükleme.
* **Detaylı İndirme Özellikleri:** Her indirme için özel özellikler formu üzerinden detaylı bilgi, kopyalanabilir linkler ve hızlı dosya erişimi.
## 🛠 Teknik Mimari
Uygulama modern yazılım prensipleri (Clean Architecture) ve MVVM deseni üzerine inşa edilmiştir:
* **DownloadManager.Core:** İndirme motoru, HTTP protokol yönetimi, SQLite veritabanı katmanı ve temel modelleri içerir.
* **DownloadManager.WPF:** CommunityToolkit.Mvvm kullanılarak geliştirilmiş, ModernWpf UI kütüphanesi ile zenginleştirilmiş kullanıcı arayüzü.
* **DownloadManager.BrowserBridge:** Tarayıcı eklentisinden gelen verileri Named Pipe üzerinden ana uygulamaya aktaran hafif köprü uygulaması.
* **Veritabanı:** Ayarlar ve indirme geçmişi SQLite üzerinde Entity Framework Core ile yönetilir.
## 📦 Kurulum ve Çalıştırma
### Gereksinimler
* .NET 8.0 SDK
* Windows 10/11
### Derleme
Proje kök dizininde aşağıdaki komutu kullanarak `Release` modunda derleme yapabilirsiniz:
```powershell
dotnet build ./src/DownloadManager.sln -c Release
```
### Çalıştırma
Derleme sonrası ana uygulamayı şu yoldan çalıştırabilirsiniz:
`src/DownloadManager.WPF/bin/Release/net8.0-windows/DownloadManager.WPF.exe`
## 📈 Son Durum ve İyileştirmeler
Son yapılan güncellemeler ile:
- [x] SVG tabanlı ikon desteği ve modern Systray entegrasyonu tamamlandı.
- [x] "Kalan Süre" (ETA) hesaplama algoritması eklendi.
- [x] "Ekle" penceresine Pano (Clipboard) otomatik yapıştırma özelliği getirildi.
- [x] Dinamik/Redirect linklerdeki "0 B" boyutu ve hatalı dosya adı sorunları giderildi.
- [x] StatusBar üzerinden anlık disk alanı ve toplam hız takibi eklendi.
- [x] Üst başlık alanına canlı hız dalgalanma grafiği eklendi.
## 🛡 Güvenlik ve Gizlilik
hDM, kullanıcı verilerini sadece yerel SQLite veritabanında saklar. Şifreler ve kimlik bilgileri `ProtectedData` (DPAPI) ile Windows seviyesinde şifrelenerek korunur.
---
**Geliştirici:** hOLOlu
**Lisans:** MIT