SmartFoldering is an enterprise-grade, automated file organization tool built with .NET Core and Avalonia UI. It silently monitors your specified directories in the background and instantly routes incoming files to their designated destination folders based on custom rules (extensions or keywords).
- ⚡ Real-Time Monitoring: Utilizes
FileSystemWatcherto detect and move files the exact millisecond they are created or renamed. - 🧠 Smart Rule Engine: Route files based on exact extensions (e.g.,
.pdf,.jpg) or specific keywords in the filename (e.g.,invoice,report). - 🛡️ Enterprise Reliability: * Thread-Safe & Lock Handling: Intelligently waits for large files to finish downloading or copying before attempting to move them.
- Atomic Saves: User settings are saved using temporary files and swapping, completely preventing data corruption during unexpected power losses.
- Single Instance (Mutex): Prevents multiple instances of the app from running and causing race conditions.
- 👻 Silent Background Operation: Runs seamlessly in the system tray. Includes a "Run at Windows Startup" feature via Registry integration.
- 📝 Professional Logging: Integrated with Serilog. All events, warnings, and errors are safely logged in the
AppDatafolder for easy debugging. - 🎨 Modern UI/UX: Features a distraction-free, premium dark-grayscale design built with Avalonia UI.
- Add a Source Folder: (e.g., your
DownloadsorDesktopfolder). - Add Target Folders: (e.g.,
Invoices,Photos,Installers). - Define Rules: Tell the app to move
.pdffiles toDocuments, or files containing the word "setup" to theInstallersfolder. - Sit Back & Relax: SmartFoldering handles the rest in the background!
- Framework: .NET Core
- UI Framework: Avalonia UI (Cross-platform desktop application framework)
- Architecture: Strict MVVM (Model-View-ViewModel) using
CommunityToolkit.Mvvm - Logging:
Serilog(File Sinks) - Serialization:
System.Text.Json(Async & culture-independent)
SmartFoldering, .NET Core ve Avalonia UI kullanılarak geliştirilmiş, kurumsal (enterprise) seviyede otomatik bir dosya düzenleme aracıdır. Belirlediğiniz klasörleri arka planda sessizce izler ve gelen dosyaları özel kurallarınıza (uzantı veya anahtar kelime) göre anında hedef klasörlerine taşır.
- ** Gerçek Zamanlı İzleme:** Dosyalar oluşturulduğu veya yeniden adlandırıldığı milisaniye içerisinde
FileSystemWatcherile tespit edilip taşınır. - ** Akıllı Kural Motoru:** Dosyaları tam uzantılarına (örn.
.pdf,.jpg) veya dosya adındaki kelimelere (örn.fatura,rapor) göre yönlendirin. - ** Kurumsal Güvenilirlik (Enterprise Reliability):** * Kilit Yönetimi (File Lock Handling): Büyük dosyaların indirilmesinin veya kopyalanmasının bitmesini sabırla bekler, dosya kilidi açılmadan işlem yapmaz.
- Atomik Kayıt (Atomic Save): Ayar dosyaları geçici dosyalar üzerinden yazılır. Elektrik kesintisi veya çökme durumunda veri kaybı/bozulması yaşanmaz.
- Tekil Çalışma (Mutex): Uygulamanın yanlışlıkla birden fazla kez açılıp sistemin çökmesini engeller.
- ** Sessiz Arka Plan Çalışması:** Sistem tepsisinde (Tray) yorulmadan çalışır. "Windows Başlangıcında Çalıştır" (Kayıt Defteri entegrasyonu) özelliği içerir.
- ** Profesyonel Loglama:** Serilog entegrasyonu sayesinde tüm işlemler, uyarılar ve hatalar
AppDataklasöründe günlük olarak güvenle saklanır. - ** Modern UI/UX:** Avalonia UI ile tasarlanmış, dikkat dağıtmayan, koyu gri tonlarda premium kurumsal arayüz.
- Kaynak Klasör Ekleyin: (Örn:
İndirilenlerveyaMasaüstüklasörünüz). - Hedef Klasörler Ekleyin: (Örn:
Faturalar,Fotoğraflar,Kurulum Dosyaları). - Kurallar Belirleyin: Uygulamaya
.pdfuzantılı dosyalarıBelgelerklasörüne, içinde "setup" geçen dosyalarıKurulum Dosyalarıklasörüne taşımasını söyleyin. - Arkanıza Yaslanın: SmartFoldering arka planda tüm işi sizin yerinize yapsın!
- Altyapı: .NET Core
- Arayüz (UI): Avalonia UI (Çapraz platform masaüstü uygulama altyapısı)
- Mimari:
CommunityToolkit.Mvvmkullanılarak tam bağımsız MVVM (Model-View-ViewModel) - Loglama:
Serilog(Günlük dosya kaydı) - Serileştirme:
System.Text.Json(Asenkron ve kültürel bağımsız - Culture Invariant)
License / Lisans: MIT License
