Xcalibur.Weather.Models
1.0.5
dotnet add package Xcalibur.Weather.Models --version 1.0.5
NuGet\Install-Package Xcalibur.Weather.Models -Version 1.0.5
<PackageReference Include="Xcalibur.Weather.Models" Version="1.0.5" />
<PackageVersion Include="Xcalibur.Weather.Models" Version="1.0.5" />
<PackageReference Include="Xcalibur.Weather.Models" />
paket add Xcalibur.Weather.Models --version 1.0.5
#r "nuget: Xcalibur.Weather.Models, 1.0.5"
#:package Xcalibur.Weather.Models@1.0.5
#addin nuget:?package=Xcalibur.Weather.Models&version=1.0.5
#tool nuget:?package=Xcalibur.Weather.Models&version=1.0.5
Xcalibur.Weather.Models
A .NET 10 model library for weather, air quality, geocoding, and astronomy applications. It provides strongly-typed DTOs and domain models used to deserialize provider responses and represent current, hourly, and daily forecast data in a consistent way.
Created by: Joshua Arzt | Company: Xcalibur Systems, LLC.
📋 Table of Contents
Purpose
Xcalibur.Weather.Models is designed to:
- Provide standardized data models for weather applications
- Support integration with multiple provider APIs including Open-Meteo, Geocodio, OpenStreetMap, IpGeo, SunriseSunset.io, Google Pollen, and Google Weather Alerts
- Deliver strongly-typed DTOs for current weather, hourly forecasts, daily forecasts, air quality, geocoding, astronomy, pollen, and weather alert data
- Provide reusable forecast point models for application-level weather presentation
- Offer location and address models for forward geocoding and lookup scenarios
- Centralize weather-related preference enums and helper methods
Key Features
Forecast and Domain Models
- CurrentForecastPoint: Real-time conditions including temperature, humidity, apparent temperature, precipitation, wind, and related metrics
- HourlyForecastPoint: Hourly forecast data for temperature, dew point, humidity, precipitation, wind, and cloud coverage
- DailyForecastPoint: Daily forecast summaries including high/low temperatures, precipitation probability, and daily conditions
- AirQualityPoint: Air quality measurements and AQI-oriented values for display and analysis
- SunMoonPoint: Sun and moon-related data for astronomy and daylight features
- AddressLocationModel: Application-facing location model for resolved addresses and coordinates
- PrecipitationTile and DoubleRange: Supporting models for precipitation display and value ranges
- PollenInformation: App-facing pollen forecast including daily breakdowns, pollen types, and plant-level detail
- WeatherAlertInformation: App-facing weather alert data including severity, certainty, urgency, instructions, and timing
Provider Models
The library includes DTOs for the following providers:
- Open-Meteo: Current weather, hourly weather, daily weather, weather units, and air quality response models
- Geocodio: Input, response, result, and address component models for geocoding workflows
- OpenStreetMap / Nominatim: Search result and nested address models for location lookup scenarios
- IpGeo Astronomy: Astronomy, location, morning/evening, and sun/moon response models
- SunriseSunset.io: Response and result models for sunrise, sunset, twilight, moonrise, moonset, azimuth, and illumination data
- Google Pollen API: Forecast response, daily pollen info, plant info, pollen type info, index details, and related support models
- Google Weather Alerts API: Alert response, alert model, alert title, and data source models
Utilities and Preferences
- AqiValueHelper: Maps AQI values to readable descriptions and health guidance
- SecurityHelper: Shared security-oriented helper functionality
- Preferences enums: Theme, temperature, soil moisture, time format, and distance units
Included Types
- Core models:
AddressLocationModelAirQualityPointCurrentForecastPointDailyForecastPointDoubleRangeHourlyForecastPointPollenDailyInformationPollenInformationPollenPlantInformationPollenTypeInformationPrecipitationTileSunMoonPointWeatherAlertInformationWeatherAlertItem
- Base model:
BaseForecastPoint
- Preference enums:
ThemeSelectionsTemperatureUnitsSoilMoistureUnitsTimeFormatUnitsDistanceUnits
- Provider model groups:
WeatherProvider.OpenMeteo.*WeatherProvider.Geocodio.*WeatherProvider.OpenStreetMap.*WeatherProvider.IpGeo.Astronomy.*WeatherProvider.SunriseSunset.*WeatherProvider.GooglePollen.Forecast.*WeatherProvider.GoogleWeatherAlerts.*
Technology
- Target Framework: .NET 10
- Current Package Version: 1.0.5
- Dependencies:
- Xcalibur.Extensions.MVVM.V2 (v1.0.5)
- Features:
- Implicit usings enabled
- Nullable reference types enabled
- JSON serialization support
- NuGet package generation on Release build
- README, license, icon, and symbols package support
📦 Installation
Install via NuGet Package Manager:
dotnet add package Xcalibur.Weather.Models
Or via Package Manager Console:
Install-Package Xcalibur.Weather.Models
Or add to your project file:
<PackageReference Include="Xcalibur.Weather.Models" Version="1.0.5" />
Use Cases
This library is ideal for:
- Weather forecast applications
- Shared model packages for weather service layers and client apps
- Geocoding and location-aware weather applications
- Air quality monitoring dashboards
- Astronomy, daylight, and sun/moon tracking features
- Smart home, environmental, and agricultural solutions
Project Structure
Xcalibur.Weather.Models/
├── Base/ # Base classes for forecast models
├── WeatherProvider/ # Provider-specific DTOs
│ ├── Geocodio/ # Geocodio models
│ ├── IpGeo/ # IpGeo astronomy models
│ ├── OpenMeteo/ # Open-Meteo models
│ │ ├── CurrentWeather/
│ │ ├── HourlyWeather/
│ │ ├── DailyWeather/
│ │ └── CurrentAirQuality/
│ ├── OpenStreetMap/ # OpenStreetMap / Nominatim models
│ ├── SunriseSunset/ # SunriseSunset.io models
│ ├── GooglePollen/ # Google Pollen API forecast models
│ └── GoogleWeatherAlerts/ # Google Weather Alerts API models
├── Helpers/ # Utility and helper classes
├── Preferences.cs # Shared preference enums
└── [Core Models] # Forecast and location models
Latest Updates
v1.0.5
- Added Google Weather Alerts API provider models:
WeatherAlertsResponseWeatherAlertModelAlertTitleModelAlertDataSourceModel
- Added app-facing alert models:
WeatherAlertInformationWeatherAlertItem
- Bumped
Xcalibur.Extensions.MVVM.V2dependency to v1.0.5
v1.0.4
- Added app-facing pollen models:
PollenInformationPollenDailyInformationPollenTypeInformationPollenPlantInformation
v1.0.3
- Added Google Pollen API forecast models:
PollenForecastResponseDailyInfoModelForecastDateModelIndexInfoModelPlantDescriptionModelPlantInfoModelPollenTypeInfoModelColorModel
v1.0.2
- Added SunriseSunset.io response models:
SunriseSunsetResponseSunriseSunsetResultModel
- Added OpenStreetMap / Nominatim models:
OpenStreetMapResultOpenStreetMapAddress
- Updated NuGet packaging metadata for README, license, icon, symbols, and Release build package generation
📄 License
This project is licensed under the Apache License 2.0. See the LICENSE-2.0.txt file included with the package for details.
Copyright © 2006 - 2026, Xcalibur Systems, LLC - All Rights Reserved
🔗 Related Projects
- Xcalibur.Weather.Services - HTTP client services for weather APIs (GitHub)
- Xcalibur.Weather.Helpers - Utility functions and conversion helpers (GitHub)
Part of the Xcalibur Weather ecosystem for comprehensive weather data integration.
Contributions are welcome! Please feel free to submit issues or pull requests to improve the library.
Author
Joshua Arzt
Xcalibur Systems, LLC
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Xcalibur.Extensions.MVVM.V2 (>= 1.0.5)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Xcalibur.Weather.Models:
| Package | Downloads |
|---|---|
|
Xcalibur.Weather.Helpers
A comprehensive .NET helper library providing utility functions for weather-related operations. Includes conversion helpers for temperature, wind speed, length, and pressure, along with specialized helpers for Open-Meteo, Geocodio, and IpGeolocation.io weather data processing and transformation. |
|
|
Xcalibur.Weather.Services
A comprehensive .NET library providing HTTP client services for weather-related APIs. Seamless integration with multiple weather data providers including Open-Meteo, Geocodio, and IpGeolocation.io for weather forecasting, geocoding, air quality monitoring, and astronomical data. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Added models for Google Weather Alerts API.