Weather Prophet is a modern, responsive weather dashboard built with .NET 10 and WPF. It demonstrates a clean migration from legacy code to a professional MVVM architecture, featuring dynamic localization, dual-theme support (Dark/Light), and secure configuration management.
Want to see the dashboard in action without compiling? You can download the latest stable executable from the releases page.
π Download Latest Release (v1.0.0)
- Dual Theme Engine: Seamless switching between "Deep Dark" and "Porcelain Light" modes. The entire UI (borders, inputs, icons) adapts instantly.
- Glassmorphism: Custom window chrome with semi-transparent backgrounds and gradient borders.
- Responsive Layout: Grid-based layout that scales elegantly with window resizing.
- Separation of Concerns: Strict division between Logic (
Services), Data (Models), and UI (ViewModels). - CommunityToolkit.Mvvm: Utilizes RelayCommands and ObservableProperties for clean, boilerplate-free code.
- Service Layer: *
WeatherService: Handles HTTP requests usingSystem.Net.Http.Json.TranslationService: Centralized localization logic.
- Embedded Configuration: The API Key is loaded from an Embedded Resource stream rather than a loose file in the output directory, offering basic obfuscation.
- Efficient Parsing: Migrated from
Newtonsoft.Jsonto the high-performanceSystem.Text.Json.
- Framework: .NET 10 (Desktop)
- UI Framework: WPF (Windows Presentation Foundation)
- Design Pattern: MVVM (Model-View-ViewModel)
- Data Source: OpenWeatherMap API
- Tools: Visual Studio 2026, CommunityToolkit.Mvvm
This project is open-source and available under the MIT License.