# MossyUpdater A modern Windows desktop application for downloading and unblocking files, featuring an entertaining quote rotation system and robust download management. ## Features ### 🚀 **Core Functionality** - **Smart Downloads**: Download files with real-time progress tracking - **Automatic Unblocking**: Removes Windows security restrictions (Zone.Identifier) - **Update Detection**: Checks if remote files have changed - **Retry Logic**: Automatically retries failed downloads (3 attempts) - **Cancellation Support**: Cancel downloads in progress ### 🎨 **User Experience** - **Quote Rotation**: 50 hilarious "Time According to Alex" quotes with smooth fade transitions - **Progress Visualization**: Real-time download progress with status updates - **Responsive Design**: Resizable window with modern WPF interface - **Settings Persistence**: Remembers your preferences between sessions - **Custom Icon**: Features favicon.ico as the application icon ### 🔧 **Technical Features** - **MVVM Architecture**: Clean separation of concerns with data binding - **Dependency Injection**: Modern IoC container with service registration - **Streaming Downloads**: Efficient handling of large files - **Comprehensive Logging**: Detailed logs saved to `%AppData%/MossyUpdater/log.txt` - **Error Handling**: User-friendly error messages with detailed logging ## Quick Start 1. **Build the application**: ```bash dotnet build ``` 2. **Run the application**: ```bash dotnet run ``` 3. **Use the application**: - Enter a download URL (defaults to MosswartMassacre.dll) - Browse and select destination folder - Click "Check Updates" to see if file has changed - Click "Download & Unblock" to start the download - Enjoy the rotating quotes while you wait! ## System Requirements - **Platform**: Windows 10/11 - **Framework**: .NET 8.0 - **Architecture**: x64 ## Publishing Create a single-file executable: ```bash dotnet publish -c Release -p:PublishProfile=FolderProfile ``` Output location: `bin\Release\net8.0-windows\publish\win-x64\` ## Configuration Settings are automatically saved to: - **Settings**: `%AppData%/MossyUpdater/settings.json` - **Logs**: `%AppData%/MossyUpdater/log.txt` ## Quote System Features 50 witty quotes from "Time According to Alex" about time management, rotating every 5 seconds with smooth fade transitions. Sample quotes include: > "I don't run late. I glide fashionably through time." - Time According to Alex > "Time is an illusion. My ETA is performance art." - Time According to Alex ## Development Built with modern C# and WPF, featuring: - **Services Pattern**: Modular business logic - **MVVM Pattern**: Clean UI separation - **Async/Await**: Non-blocking operations - **Dependency Injection**: Testable architecture - **Resource Management**: Proper disposal patterns ## License Built for the SawatoMosswartsEnjoyersClub/MosswartMassacre project.