Osirion.Blazor is split into modules, and each module is its own NuGet package. The Osirion.Blazor package
references all of them and adds the AddOsirion registration; see Getting started for the
setup. This page lists the components by module and links to their reference pages.
What every component shares
- Server-rendered markup. Components render their HTML on the server, so pages work under static SSR. A few
(for example the carousels,
OsirionImageGalleryandOsirionPageLayout) load a small script of their own for behavior that needs the browser; registerAddJSComponents()so they can. - Common parameters. Components inherit
OsirionComponentBase, which addsClassandStylefor the root element,Attributes(any unmatched attribute is passed through) andTheme(aThemeMode:Light,Dark,SystemorInverted, defaultSystem). The oldSetInteractiveparameter is obsolete and setting it is a compile error; interactivity is detected automatically. - Sanitized content. Markdown is rendered to HTML and cleaned with an allow-list before it is shown, so script,
event handler attributes and
javascript:URLs in content are removed.
Components new in 4.0 are marked below.
Core
Package Osirion.Blazor.Core, namespace Osirion.Blazor.Components. Building blocks for any page.
- Layout:
OsirionPageLayout,OsirionFooter,OsirionStickySidebar,OsirionBackgroundPattern. - Sections:
HeroSection,OsirionBaseSection,OsirionContactInfoSection,OsirionResponsiveShowcaseSection,OsirionContextCardGrid,OsirionMetricGrid. From 4.0:OsirionPricingTable,OsirionFeatureComparison,OsirionSteps. - Cards:
OsirionFeatureCard,OsirionTestimonialCard,OsirionSubscriptionCard,OsirionMetricCard. From 4.0:OsirionAuthorCard. - Carousels:
InfiniteLogoCarousel,OsirionTestimonialCarousel. - Content:
OsirionArticleMetdata. From 4.0:OsirionCallout,OsirionTabs,OsirionAccordion,OsirionFaq,OsirionResponsiveImage,OsirionVideoEmbed,OsirionReadingProgress. - Forms:
OsirionContactForm. - Navigation:
OsirionBreadcrumbs,OsirionReadMoreLink. - Popups:
OsirionCookieConsent. From 4.0:OsirionAnnouncementBar. - Rendering:
OsirionHtmlRenderer,OsirionReveal. - States:
OsirionPageLoading,OsirionContentNotFound. OsirionImageGallery, a gallery with a lightbox.
CMS web
Package Osirion.Blazor.Cms.Web. Components that read content from the configured provider (a local folder or a
GitHub repository).
- Content:
ContentList,ContentView,ContentPage,ContentRenderer,LocalizedContentView,SeoMetadataRenderer. - Navigation:
ContentBreadcrumbs,CategoriesList,TagCloud,SearchBox,TableOfContents,DirectoryNavigation,LocalizedNavigation,OsirionContentNavigation. From 4.0:ContentSeriesNavigation. - Page-level components that combine the above:
ArticlePage,DocumentPage,LandingPageandHomePage.
CMS admin
Package Osirion.Blazor.Cms.Admin. Admin pages under /osirion for browsing and editing content in a GitHub
repository, with a Markdown editor and preview. Every admin page requires the Osirion.Cms.Admin authorization
policy, so the host must add its own sign-in first. The Osirion.Blazor.Cms package combines CMS web and CMS admin.
Navigation
Package Osirion.Blazor.Navigation, namespace Osirion.Blazor.Navigation.Components.
Navigation components: Menu with MenuItem, MenuGroup, MenuDivider,
MenuCallToAction, MenuPanel, MenuPanelLink and MenuImageCard; EnhancedNavigation, which handles scroll
position after Blazor's enhanced navigation; ScrollToTop and ScrollToTopProvider.
Analytics
Package Osirion.Blazor.Analytics, namespace Osirion.Blazor.Analytics.Components.
Analytics components: ClarityTracker, MatomoTracker, GA4Tracker and
YandexMetricaTracker, configured under Osirion:Analytics. From 4.0: PlausibleTracker and UmamiTracker.
Theming
Package Osirion.Blazor.Theming, namespace Osirion.Blazor.Theming.Components.
Theming components: OsirionStyles loads the
stylesheets and the adapter for Bootstrap, Fluent UI, MudBlazor or Radzen;
ThemeToggle is a button that switches between the light and dark theme.
