Osirion.Blazor
1.5.2
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Osirion.Blazor --version 1.5.2
NuGet\Install-Package Osirion.Blazor -Version 1.5.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Osirion.Blazor" Version="1.5.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Osirion.Blazor" Version="1.5.2" />
<PackageReference Include="Osirion.Blazor" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Osirion.Blazor --version 1.5.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Osirion.Blazor, 1.5.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Osirion.Blazor&version=1.5.2
#tool nuget:?package=Osirion.Blazor&version=1.5.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Osirion.Blazor
Modern, high-performance Blazor components and utilities that work with SSR, Server, and WebAssembly hosting models.
Features
- SSR Compatible: Works with Server-Side Rendering
- Zero-JS Dependencies: Core functionality without JavaScript interop
- Multi-Platform: Supports .NET 8, .NET 9, and future versions
- Analytics Integration: Microsoft Clarity, Matomo
- Enhanced Navigation: Improved scrolling behavior with ScrollToTop
- GitHub CMS: Markdown-based content management
- Customizable Styling: CSS variables for easy theming
Installation
dotnet add package Osirion.Blazor
Getting Started
- Add to your
_Imports.razor
:
@using Osirion.Blazor.Components.Navigation
@using Osirion.Blazor.Components.Analytics
@using Osirion.Blazor.Components.Analytics.Options
@using Osirion.Blazor.Components.GitHubCms
@using Osirion.Blazor.Services.GitHub
@using Osirion.Blazor.Models.Cms
- Configure services in
Program.cs
:
using Osirion.Blazor.Extensions;
// Option 1: Configure all services using fluent API
builder.Services.AddOsirionBlazor(osirion => {
osirion
// Add GitHub CMS with configuration
.AddGitHubCms(options => {
options.Owner = "your-github-username";
options.Repository = "your-content-repo";
options.ContentPath = "content";
options.Branch = "main";
})
// Add ScrollToTop with detailed configuration
.AddScrollToTop(options => {
options.Position = ButtonPosition.BottomRight;
options.Behavior = ScrollBehavior.Smooth;
options.VisibilityThreshold = 300;
options.Text = "Top";
})
// Add CSS framework integration
.AddOsirionStyle(CssFramework.Bootstrap)
// Add analytics trackers
.AddClarityTracker(options => {
options.SiteId = "your-clarity-id";
options.Track = true;
})
.AddMatomoTracker(options => {
options.SiteId = "your-matomo-id";
options.Track = true;
});
});
// Option 2: Configure each service individually
builder.Services.AddGitHubCms(options => {
options.Owner = "your-github-username";
options.Repository = "your-content-repo";
});
builder.Services.AddScrollToTop(ButtonPosition.BottomRight, ScrollBehavior.Smooth);
builder.Services.AddOsirionStyle(CssFramework.Bootstrap);
builder.Services.AddClarityTracker(builder.Configuration);
builder.Services.AddMatomoTracker(builder.Configuration);
// Option 3: Configure from appsettings.json
builder.Services.AddOsirionBlazor(builder.Configuration);
- Add styles and components to your application:
<link rel="stylesheet" href="_content/Osirion.Blazor/css/osirion-cms.css" />
<EnhancedNavigationInterceptor Behavior="ScrollBehavior.Smooth" />
<ScrollToTop />
<ContentList Directory="blog" />
<CategoriesList />
<TagCloud />
<SearchBox />
Styling Components
Osirion.Blazor components use CSS variables for easy styling customization:
<link rel="stylesheet" href="_content/Osirion.Blazor/css/osirion-cms.css" />
<style>
:root {
--osirion-primary-color: #0077cc;
--osirion-border-radius: 0.25rem;
--osirion-font-size: 1.1rem;
/* ScrollToTop component variables */
--osirion-scroll-background: #0077cc;
--osirion-scroll-color: white;
}
</style>
Alternatively, use the OsirionStyles component:
@using Osirion.Blazor.Components.GitHubCms
<OsirionStyles CustomVariables="--osirion-primary-color: #0077cc;" />
Documentation
- Navigation Components
- Analytics Components
- GitHub CMS Components
- Styling Guide
- Quick Reference
- Migration Guide
License
MIT License - see LICENSE
Contributing
We welcome contributions! Please see our contributing guidelines for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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 is compatible. 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Markdig (>= 0.34.0)
- Microsoft.AspNetCore.Components.Web (>= 8.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 8.0.0)
- Microsoft.Extensions.Http (>= 8.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
-
net9.0
- Markdig (>= 0.34.0)
- Microsoft.AspNetCore.Components.Web (>= 9.0.3)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.4)
- Microsoft.Extensions.Http (>= 9.0.4)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.4)
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 | |
---|---|---|---|
2.1.1 | 127 | 5/20/2025 | |
2.1.0 | 128 | 5/19/2025 | |
2.0.2 | 150 | 4/23/2025 | |
2.0.1 | 154 | 4/23/2025 | |
2.0.0 | 157 | 4/22/2025 | |
1.5.3 | 236 | 4/21/2025 | |
1.5.2 | 237 | 4/21/2025 | |
1.5.1 | 239 | 4/21/2025 | |
1.5.0 | 239 | 4/21/2025 | |
1.4.0 | 243 | 4/21/2025 | |
1.3.0 | 242 | 4/20/2025 | |
1.2.0 | 248 | 4/19/2025 | |
1.1.0 | 250 | 4/19/2025 | |
1.0.0 | 200 | 4/19/2025 |