Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bernhard2000/weatherdataaggregation
https://github.com/bernhard2000/weatherdataaggregation
asynchronous avalonia csharp open-meteo weather webassembly
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/bernhard2000/weatherdataaggregation
- Owner: Bernhard2000
- License: mit
- Created: 2024-04-27T09:06:48.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-01-10T01:04:31.000Z (about 1 month ago)
- Last Synced: 2025-01-10T01:31:20.865Z (about 1 month ago)
- Topics: asynchronous, avalonia, csharp, open-meteo, weather, webassembly
- Language: C#
- Homepage:
- Size: 192 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Weather Data Aggregation
This project is a weather data aggregation application built with C#. It fetches weather data from the Open Meteo API and displays it in various formats. The application makes use of asynchronous programming to ensure a smooth and responsive user experience. (This README was partially generated with AI)
## Features
- Fetches hourly and daily weather data asynchronously
- Can display data from 1945-today at once
- Fetches weather data from the Open Meteo API
- Displays data in livecharts2 plots
- Allows searching for locations and adding them to a collection for weather data fetching
- Automatically reloads data when the selected range or the selected locations change
- Displays weather forecast data for the next 7 days
- Working WebAssembly version## Asynchronous Programming
The application uses Tasks for any significant operations, so that it stays responsive on user input. Additionally calls to the Open-Meteo API are parallellised for each location to speed up loading with multiple selected locations.
To update the UI, `Dispatcher.UIThread.InvokeAsync` is used to ensure that the UI is updated on the main thread.### Requirements
- .NET 8.0
- Avalonia
- LiveCharts2