A modern and user-friendly C# weather application for Windows.
Weather Plus Zero is a comprehensive weather application designed for Windows operating systems, developed using C#. It aims to provide users with instant weather information, hourly/daily forecasts, and essential data like temperature, humidity, and wind speed to help plan their daily lives. It features a modern, user-friendly interface optimized for performance and low resource usage.
To run this project locally after cloning, API keys need to be configured in the appsettings.json
file. These keys are essential for accessing external services like Supabase, SendGrid, and Visual Crossing.
Important: Do not commit your actual API keys to version control.
{
"Authentication": {
"Supabase_Url": "Your_Supabase_URL",
"Supabase_Key": "Your_Supabse_KEY",
"Supabase_Service_Role": "Your_Supabase_ROLE",
"SendGrid_ApiKey": "Your_Twilio_SendGrid_API_KEY",
"Weather_BaseUrl": "https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/{0}?key={1}&unitGroup=metric",
"Weather_ApiKey": "Your_Visual_Crossing_API_KEY",
"Ip_Api_Url": "http://ip-api.com/json"
},
"BackgroundImageURLs": {
"clear-day-background": "https://img.freepik.com/free-photo/sun-flare_74190-1494.jpg"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}
The application utilizes two local JSON files stored in C:/Users/UserName/AppData/Local/WeatherZeroPlus/
:
User Authentication:
Main Application Interface:
Email Notifications:
The project follows a layered architecture (Presentation/WPF, Application/Business Logic, Data/API Access). Security is addressed through Supabase authentication, password hashing, email verification, and encryption of local sensitive data.