Flowery.NET
1.0.9
See the version list below for details.
dotnet add package Flowery.NET --version 1.0.9
NuGet\Install-Package Flowery.NET -Version 1.0.9
<PackageReference Include="Flowery.NET" Version="1.0.9" />
<PackageVersion Include="Flowery.NET" Version="1.0.9" />
<PackageReference Include="Flowery.NET" />
paket add Flowery.NET --version 1.0.9
#r "nuget: Flowery.NET, 1.0.9"
#:package Flowery.NET@1.0.9
#addin nuget:?package=Flowery.NET&version=1.0.9
#tool nuget:?package=Flowery.NET&version=1.0.9
<div align="center">
🌼 Flowery.NET
A C# port of the popular DaisyUI component library for Avalonia UI.
</div>
This library provides native Avalonia controls that mimic the utility-first, semantic class naming of DaisyUI, making it easy to build beautiful, themed UIs in Avalonia. A NuGet package is also available.
🚧 Active Development - Expect Breaking Changes 🚧
This will be under heavy development with a lot of changes across many files, while I'll keep refining and adding missing features to existing controls or even add custom new ones, like the weather widgets. Pin to a specific commit if you need stability!
Features
- Native Controls: C# classes inheriting from Avalonia primitives (e.g.,
DaisyButton : Button). - 35 DaisyUI Themes: All official DaisyUI themes included (Light, Dark, Cupcake, Dracula, Nord, Synthwave, and more).
- Runtime Theme Switching: Use
DaisyThemeDropdownto switch themes at runtime. - Variants: Supports
Primary,Secondary,Accent,Ghost, etc. - Framework Support: Library targets
netstandard2.0for maximum compatibility. - Gallery App: Includes a full demo application (
Flowery.NET.Gallery) showcasing all controls and features.
Documentation
📖 View the full documentation - Browse all controls with properties, enum values, and XAML usage examples.
The documentation is generated from curated markdown (with optional auto-parsed metadata) and kept up-to-date via CI.
Installation
Add the NuGet package or project reference to
Flowery.NET.Configure your
App.axamlwith DaisyUITheme (and a base theme like FluentTheme if you're not using another):
<Application xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:daisy="clr-namespace:Flowery;assembly=Flowery.NET"
x:Class="YourApp.App"
RequestedThemeVariant="Dark">
<Application.Styles>
<FluentTheme />
<daisy:DaisyUITheme />
</Application.Styles>
</Application>
Note: The
Flowerynamespace is only forDaisyUITheme. For actual controls, useFlowery.Controls(see Usage Example below).
- Your
App.axaml.csremains standard:
public partial class App : Application
{
public override void Initialize() => AvaloniaXamlLoader.Load(this);
public override void OnFrameworkInitializationCompleted()
{
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
desktop.MainWindow = new MainWindow();
base.OnFrameworkInitializationCompleted();
}
}
Usage Example
The best way to explore the controls is to run the included Gallery App. It demonstrates every component, theme switching, and various configuration options.
In your view files (e.g., MainWindow.axaml), add the controls namespace:
<Window xmlns="https://github.com/avaloniaui"
xmlns:controls="clr-namespace:Flowery.Controls;assembly=Flowery.NET"
...>
<StackPanel Spacing="10">
<controls:DaisyButton Content="Primary Button" Variant="Primary" />
<controls:DaisyInput Watermark="Type here" Variant="Bordered" />
<controls:DaisyRating Value="3.5" />
</StackPanel>
</Window>
Components
Actions
- Button (
DaisyButton): Buttons with variants (Primary, Secondary, Accent, Ghost, Link) and sizes (Large, Normal, Small, Tiny). Supports Outline and Active states. - Fab (
DaisyFab): Floating Action Button (Speed Dial) with support for multiple actions. - Modal (
DaisyModal): Dialog box with backdrop overlay. - Swap: (Use
ToggleButtonwith custom content orDaisyToggle).
Data Display
- Accordion (
DaisyAccordion): Group of collapse items that ensures only one item is expanded at a time. - Alert (
DaisyAlert): Feedback messages (Info, Success, Warning, Error). - Avatar (
DaisyAvatar): User profile image container (Circle, Square) with online/offline status indicators. - Badge (
DaisyBadge): Small status indicators (Primary, Secondary, Outline, etc.). - Card (
DaisyCard): Content container with padding and shadow. - Carousel (
DaisyCarousel): Scrollable container for items. - Chat Bubble (
DaisyChatBubble): Message bubbles with header, footer, and alignment (Start/End). - Collapse (
DaisyCollapse): Accordion/Expander with animated arrow or plus/minus icon. - Countdown (
DaisyCountdown): Monospace digit display. - Diff (
DaisyDiff): Image comparison slider (Before/After). - Hover Gallery (
DaisyHoverGallery): Image/Content gallery driven by mouse hover position. - Kbd (
DaisyKbd): Keyboard key visual style. - List (
DaisyList,DaisyListRow,DaisyListColumn): Vertical list layout with flexible row structure. Supports grow columns and wrapped content. - Stat (
DaisyStat): Statistics block with Title, Value, and Description. - Table (
DaisyTable): Styled items control for tabular data. - Timeline (
DaisyTimeline): Vertical list of events with connecting lines.
Data Input
- Checkbox (
DaisyCheckBox): Checkbox with themed colors. - File Input (
DaisyFileInput): Styled button/label for file selection. - Input (
DaisyInput): Text input field with variants (Bordered, Ghost, Primary, etc.). - Radio (
DaisyRadio): Radio button with themed colors. - Range (
DaisyRange): Slider control. - Rating (
DaisyRating): Star rating control with interactivity and partial fill support. - Select (
DaisySelect): ComboBox with themed styles. - Textarea (
DaisyTextArea): Multiline text input. - Toggle (
DaisyToggle): Switch toggle control.
Layout
- Divider (
DaisyDivider): Separation line with optional text. - Drawer (
DaisyDrawer): Sidebar navigation with overlay (inheritsSplitView). - Hero (
DaisyHero): Large banner component. - Join (
DaisyJoin): container that groups children (buttons/inputs) by merging their borders. - Stack (
DaisyStack): container that stacks children visually with offsets.
Navigation
- Breadcrumbs (
DaisyBreadcrumbs): Navigation path with separators. - Menu (
DaisyMenu): Vertical or horizontal list of links/actions. - Navbar (
DaisyNavbar): Top navigation bar container. - Pagination (
DaisyPagination): Group of buttons for page navigation. - Steps (
DaisySteps): Progress tracker steps. - Tabs (
DaisyTabs): Tabbed navigation (Bordered, Lifted, Boxed).
Feedback & Utils
Indicator (
DaisyIndicator): Utility to place a badge on the corner of another element.Status Indicator (
DaisyStatusIndicator): Status dot with 27 animation variants (Ping, Pulse, Ripple, Heartbeat, Orbit, Sonar, and more). Supports all theme colors and 5 sizes.Loading (
DaisyLoading): Animated loading indicators with 27 variants (extended from DaisyUI's original 6) across 4 categories:- Classic: Spinner, Dots, Ring, Ball, Bars, Infinity
- Terminal-inspired: Orbit, Snake, Pulse, Wave, Bounce
- Matrix/Colon-dot: Matrix, MatrixInward, MatrixOutward, MatrixVertical
- Special effects: MatrixRain, Hourglass, SignalSweep, BitFlip, PacketBurst, CometTrail, Heartbeat, TunnelZoom, GlitchReveal, RippleMatrix, CursorBlink, CountdownSpinner
Mask (
DaisyMask): Applies shapes (Squircle, Heart, Hexagon, etc.) to content.Mockup (
DaisyMockup): Frames for Code, Window, or Browser.Progress (
DaisyProgress): Linear progress bar.Radial Progress (
DaisyRadialProgress): Circular progress indicator.Skeleton (
DaisySkeleton): Animated placeholder for loading states.Toast (
DaisyToast): Container for stacking alerts (fixed positioning).Tooltip: Themed standard Avalonia
ToolTip.
Theme Controls
- Theme Swap (
DaisyThemeSwap): Toggle button to switch between light and dark themes with animated sun/moon icons. - Theme Dropdown (
DaisyThemeDropdown): Dropdown to select from all 35 available DaisyUI themes at runtime. - Theme Radio (
DaisyThemeRadio): Radio button to select a specific theme. - Theme Controller (
DaisyThemeController): Flexible theme toggle with multiple presentation modes (Toggle, Checkbox, Swap, ToggleWithText, ToggleWithIcons). Automatically syncs with theme changes app-wide. - Theme Manager (
DaisyThemeManager): Centralized static class for theme management. ProvidesApplyTheme(),CurrentThemeName,AvailableThemes, andThemeChangedevent for app-wide synchronization.
Available Themes
Light Themes: Light, Acid, Autumn, Bumblebee, Caramellatte, Cmyk, Corporate, Cupcake, Cyberpunk, Emerald, Fantasy, Garden, Lemonade, Lofi, Nord, Pastel, Retro, Silk, Valentine, Winter, Wireframe
Dark Themes: Dark, Abyss, Aqua, Black, Business, Coffee, Dim, Dracula, Forest, Halloween, Luxury, Night, Sunset, Synthwave
✨ Flowery.NET Exclusives
Beyond DaisyUI - The following features and controls are not part of the original DaisyUI CSS specification. They are unique to Flowery.NET, built natively for Avalonia to provide production-ready components for real-world .NET applications.
Accessibility
Controls that convey state visually (loading indicators, progress bars, status dots) include built-in screen reader support via the AccessibleText property:
<daisy:DaisyLoading Variant="Spinner" AccessibleText="Loading your profile" />
<daisy:DaisyStatusIndicator Color="Success" />
<daisy:DaisyStatusIndicator Color="Error" AccessibleText="Server offline" />
<daisy:DaisyProgress Value="45" AccessibleText="Upload progress" />
Supported controls: DaisyLoading, DaisyProgress, DaisyRadialProgress, DaisyStatusIndicator, DaisyCountdown, DaisySkeleton, DaisyRating.
Utility Controls
- Component Sidebar (
DaisyComponentSidebar): A pre-built documentation/admin sidebar with categories, search support, and navigation events. - Modifier Keys (
DaisyModifierKeys): Visualizes the state of keyboard modifiers (Shift, Ctrl, Alt) and locks (Caps, Num, Scroll).
Color Picker Suite
A complete suite of color selection components inspired by Cyotek's ColorPicker, rebuilt natively for Avalonia with DaisyUI styling.
- Color Wheel (
DaisyColorWheel): Circular HSL color wheel for intuitive hue/saturation selection. Supports configurable lightness and optional center crosshairs. - Color Grid (
DaisyColorGrid): Grid-based palette selector with configurable cell sizes and column count. Ships with a default paint-style palette. - Color Slider (
DaisyColorSlider): Channel-specific sliders for Red, Green, Blue, Alpha, Hue, Saturation, and Lightness. Each renders a gradient showing the channel's range. - Color Editor (
DaisyColorEditor): Comprehensive editor combining RGB/HSL sliders with numeric inputs. Supports optional alpha channel and HSL slider visibility. - Screen Color Picker (
DaisyScreenColorPicker): Eyedropper tool using click-and-drag to sample colors from anywhere on screen (Windows only). Shows live preview during drag. - Color Picker Dialog (
DaisyColorPickerDialog): Full-featured modal dialog combining wheel, grid, editor, and screen picker with OK/Cancel actions.
Advanced Numeric Input
- Numeric Up/Down (
DaisyNumericUpDown): A numeric input control with spin buttons supporting 6 number bases (Decimal, Hexadecimal, Binary, Octal, ColorHex, IPv4 Address). Features real-time input filtering, thousand separators, prefix/suffix display (e.g.,$,%,kg), and visual error flash on invalid input. Includes helper methods likeToHexString(),ToIPAddressString(), andToColorHexString()for runtime value conversion.
Weather Widgets
A set of weather display widgets with animated condition icons, support for both manual binding and automatic data fetching via IWeatherService.
- Weather Icon (
DaisyWeatherIcon): Animated weather condition icon with unique animations per condition type (sun rotation, cloud drift, rain drops, snow float, lightning flash, wind sway, fog fade). Toggle animations viaIsAnimatedproperty. - Weather Card (
DaisyWeatherCard): Composite weather widget combining current conditions, forecast, and metrics. Supports auto-refresh and configurable sections (ShowCurrent, ShowForecast, ShowMetrics). - Weather Current (
DaisyWeatherCurrent): Displays current temperature, feels-like, animated condition icon, and sunrise/sunset times. - Weather Forecast (
DaisyWeatherForecast): Horizontal strip of daily forecasts with day name, animated condition icon, and high/low temperatures. - Weather Metrics (
DaisyWeatherMetrics): Table display for UV index, wind speed, and humidity with progress bars.
<controls:DaisyWeatherIcon Condition="Sunny" IconSize="48" />
<controls:DaisyWeatherIcon Condition="Thunderstorm" IconSize="64" IsAnimated="True" />
<controls:DaisyWeatherCurrent Temperature="22" FeelsLike="24"
Condition="Sunny" TemperatureUnit="C" />
<controls:DaisyWeatherCard Temperature="18" Condition="PartlyCloudy"
ShowForecast="True" ShowMetrics="True" />
Theme Controller
The DaisyThemeController provides multiple ways to toggle between two themes, mimicking the DaisyUI theme-controller component:
<controls:DaisyThemeController Mode="Toggle" />
<controls:DaisyThemeController Mode="Checkbox" />
<controls:DaisyThemeController Mode="Swap" />
<controls:DaisyThemeController Mode="ToggleWithText"
UncheckedTheme="Light" CheckedTheme="Synthwave"
UncheckedLabel="Light" CheckedLabel="Synthwave" />
<controls:DaisyThemeController Mode="ToggleWithIcons" />
When the app's theme changes (e.g., via DaisyThemeDropdown), the controller automatically updates its CheckedThemeandCheckedLabel to reflect the new theme.
How Theming Works
Flowery.NET uses Avalonia's ThemeDictionaries to provide seamless theme switching. Understanding this architecture helps you choose the right API for your needs.
Theme Architecture
- Colors.axaml contains
ResourceDictionary.ThemeDictionarieswithLightandDarkvariants - Setting
Application.RequestedThemeVarianttriggers Avalonia's built-in resource refresh - For the 35 built-in themes, each is mapped to either
LightorDarkvariant with its unique color palette
When to Use Which API
| Scenario | Recommended API |
|---|---|
| Switch between built-in themes (Light, Dark, Dracula, etc.) | DaisyThemeManager.ApplyTheme() |
| Custom theme application strategy (in-place updates, persistence) | Set DaisyThemeManager.CustomThemeApplicator |
| Toggle Light/Dark modes | RequestedThemeVariant = ThemeVariant.Light/Dark |
| Load custom themes from CSS at runtime | DaisyThemeLoader.ApplyThemeToApplication() |
| Parse DaisyUI CSS files | DaisyUiCssParser.ParseFile() |
Key Difference
DaisyThemeManager.ApplyTheme()- Adds palette resources toMergedDictionariesand sets the appropriateRequestedThemeVariant. Best for switching between the 35 built-in themes.DaisyThemeLoader.ApplyThemeToApplication()- Updates resources in-place within ThemeDictionaries. Use this for custom themes loaded from CSS files at runtime.
Quick Start Examples
Switch between built-in themes (in any code-behind or ViewModel):
using Flowery.Controls;
// One-liner to switch themes - call from button click, menu, etc.
DaisyThemeManager.ApplyTheme("Synthwave");
Or use XAML controls (in your .axaml files like MainWindow.axaml):
xmlns:controls="clr-namespace:Flowery.Controls;assembly=Flowery.NET"
<controls:DaisyThemeDropdown Width="220" />
<controls:DaisyThemeController Mode="Swap" />
Load custom CSS themes at runtime (in code-behind):
using Flowery.Theming;
// Parse a DaisyUI CSS file and apply it immediately
var theme = DaisyUiCssParser.ParseFile("path/to/mytheme.css");
DaisyThemeLoader.ApplyThemeToApplication(theme);
This is the same pattern used in the Gallery app's "CSS Theme Converter" demo.
Theme Manager
DaisyThemeManager provides simple theme switching for the 35 built-in DaisyUI themes. It works best when using the pre-bundled themes and handles the complexity of palette loading and variant selection automatically.
using Flowery.Controls;
// Apply a theme by name
DaisyThemeManager.ApplyTheme("Synthwave");
// Get current theme
var current = DaisyThemeManager.CurrentThemeName;
// List all available themes
foreach (var theme in DaisyThemeManager.AvailableThemes)
{
Console.WriteLine($"{theme.Name} (Dark: {theme.IsDark})");
}
// Listen for theme changes
DaisyThemeManager.ThemeChanged += (sender, themeName) =>
{
Console.WriteLine($"Theme changed to: {themeName}");
};
// Check if a theme is dark
bool isDark = DaisyThemeManager.IsDarkTheme("Dracula");
Custom Theme Applicator (v1.0.9+)
📖 Full Migration Guide - Step-by-step guide for integrating Flowery.NET into existing apps with custom resources.
If your app has a custom theming architecture (e.g., in-place ThemeDictionary updates, persisting theme settings, or chaining additional actions), you can override the default theme application behavior by setting CustomThemeApplicator:
// In App.axaml.cs OnFrameworkInitializationCompleted:
DaisyThemeManager.CustomThemeApplicator = themeName =>
{
var themeInfo = DaisyThemeManager.GetThemeInfo(themeName);
if (themeInfo == null) return false;
// Your custom theme application logic here
// e.g., in-place ThemeDictionary updates, settings persistence, etc.
MyApp.ApplyThemeInPlace(themeInfo);
AppSettings.Current.Theme = themeName;
AppSettings.Save();
return true;
};
Once set, all built-in theme controls (DaisyThemeDropdown, DaisyThemeController, DaisyThemeRadio, DaisyThemeSwap) will automatically use your custom applicator instead of the default MergedDictionaries approach. This means you can drop in any Flowery.NET theme control without modification - they'll all respect your app's theming strategy.
Optional Features
Theme Parsing & Generation Utilities
The library includes helper utilities for parsing DaisyUI CSS theme files and generating Avalonia AXAML resources. These are not wired up by default but can be used for custom theme workflows.
Parse a DaisyUI CSS Theme File
using Flowery.Theming;
// Parse a single CSS file
var theme = DaisyUiCssParser.ParseFile("path/to/synthwave.css");
// Or parse from string
var cssContent = File.ReadAllText("mytheme.css");
var customTheme = DaisyUiCssParser.Parse(cssContent, "mytheme");
// Access parsed data
Console.WriteLine($"Theme: {theme.Name}, IsDark: {theme.IsDark}");
foreach (var color in theme.Colors)
{
Console.WriteLine($" {color.Key}: {color.Value}");
}
Generate AXAML from Parsed Theme
using Flowery.Theming;
var theme = DaisyUiCssParser.ParseFile("dracula.css");
// Generate single theme AXAML
var axaml = DaisyUiAxamlGenerator.Generate(theme);
File.WriteAllText("Themes/Palettes/Dracula.axaml", axaml);
// Generate combined Light/Dark AXAML with ThemeDictionaries
var lightTheme = DaisyUiCssParser.ParseFile("corporate.css");
var darkTheme = DaisyUiCssParser.ParseFile("business.css");
var combinedAxaml = DaisyUiAxamlGenerator.GenerateCombined(lightTheme, darkTheme);
File.WriteAllText("Themes/Colors.axaml", combinedAxaml);
Runtime Theme Loading
using Flowery.Theming;
// Create a loader instance
var loader = new DaisyThemeLoader();
// Load themes from a directory
loader.LoadFromDirectory("themes/");
// Or load individual files
loader.LoadFromFile("custom/mytheme.css");
// Get a loaded theme by name
var synthwave = loader.GetTheme("synthwave");
if (synthwave != null)
{
// Apply theme to the application at runtime
DaisyThemeLoader.ApplyThemeToApplication(synthwave);
}
// Export a theme to AXAML for embedding
var axaml = DaisyThemeLoader.ExportToAxaml(synthwave);
Color Conversion
using Flowery.Theming;
// Convert OKLCH (used by DaisyUI CSS) to Hex
var hex = ColorConverter.OklchToHex("65.69% 0.196 275.75");
// Result: "#5B21B6"
// Parse hex to RGB
var (r, g, b) = ColorConverter.HexToRgb("#5B21B6");
Control Template Guidelines
For contributors creating or modifying control templates, follow these architectural patterns to ensure consistent behavior:
Background Border Architecture
Background borders should be siblings of content, not parents. This prevents opacity issues where styling the border would inadvertently affect text readability.
<Panel>
<Border x:Name="PART_Background"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}" />
<ContentPresenter Content="{TemplateBinding Content}" />
</Panel>
<Border Background="{TemplateBinding Background}">
<ContentPresenter Content="{TemplateBinding Content}" />
</Border>
Opacity Guidelines
- Never set
Opacityon containers that hold text content - Use separate background layers for disabled/hover states that require transparency
- For disabled states, reduce opacity on
PART_Backgroundonly, keeping text at full opacity
This pattern is used by DaisyButton, DaisyInput, and other controls to maintain text legibility across all states.
Technical Requirements
To use the library in your project:
- .NET Standard 2.0 compatible framework (.NET Core 2.0+, .NET Framework 4.6.1+, .NET 5/6/7/8+).
- Avalonia UI 11.0+.
To build and run the source code/gallery:
- .NET 8.0 SDK or later.
- Visual Studio 2022, JetBrains Rider, or VS Code.
- Supports Windows, macOS, and Linux.
Windows SmartScreen Warning
When running the Gallery app for the first time on Windows, you may see a "Windows protected your PC" SmartScreen warning. This appears because the app is not code-signed (certificates are expensive 💸).
To run anyway:
- Click "More info"
- Click "Run anyway"
Alternatively: Right-click the .exe → Properties → Check "Unblock" → OK
License
MIT
Support
If you find this library useful, consider supporting its development:
Changelog
See CHANGELOG.md for version history and release notes.
Credits & References
This project is built upon and inspired by the following amazing projects:
- Avalonia UI - The cross-platform UI framework.
- DaisyUI - The original Tailwind CSS component library that inspired this port.
- Avalonia.Fonts.Inter - The font used in the gallery.
- Cyotek ColorPicker - The color picker controls are inspired by Cyotek's excellent Windows Forms ColorPicker library (MIT License).
Disclaimer: This project is not affiliated with, endorsed by, or sponsored by any of the above.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Avalonia (>= 11.3.9)
- Avalonia.Skia (>= 11.3.9)
- System.Text.Json (>= 8.0.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.9.1 | 31 | 2/8/2026 |
| 1.9.0 | 31 | 2/7/2026 |
| 1.8.0 | 170 | 12/20/2025 |
| 1.7.2 | 203 | 12/19/2025 |
| 1.7.1 | 263 | 12/18/2025 |
| 1.7.0 | 266 | 12/18/2025 |
| 1.6.0 | 266 | 12/17/2025 |
| 1.5.1 | 249 | 12/15/2025 |
| 1.5.0 | 148 | 12/14/2025 |
| 1.4.1 | 173 | 12/13/2025 |
| 1.4.0 | 137 | 12/12/2025 |
| 1.3.1 | 423 | 12/11/2025 |
| 1.3.0 | 415 | 12/11/2025 |
| 1.2.0 | 415 | 12/10/2025 |
| 1.1.0 | 432 | 12/9/2025 |
| 1.0.9 | 424 | 12/9/2025 |
| 1.0.8 | 411 | 12/8/2025 |
| 1.0.7 | 199 | 12/7/2025 |
| 1.0.6 | 124 | 12/6/2025 |
| 1.0.5 | 197 | 12/4/2025 |
| 1.0.4 | 185 | 12/4/2025 |
| 1.0.3 | 188 | 12/4/2025 |
| 1.0.2 | 662 | 12/2/2025 |