---
name: rubicblazor
description: Use when building, reviewing, or troubleshooting Blazor UI that uses the RubicBlazor component library, its components, services, themes, utility classes, or JavaScript integration.
---

# RubicBlazor

Use RubicBlazor's own documentation and public API as the source of truth. Do not invent parameters, events, component behavior, CSS utilities, or service APIs.

## Installation

- Open the [RubicBlazor Get Started page](http://rubicblazor.skyconis.com) and use the `DOWNLOAD` button.
- The download contains `RubicBlazor.dll` in a ZIP archive.
- Extract the DLL into the application's `Bin` folder and add it as a project reference.
- Do not assume that RubicBlazor is available as a public NuGet package.

## Discover the API

1. Read [the documentation index](http://rubicblazor.skyconis.com/docs.md) to find documented components and verified examples.
2. Read [the complete API reference](http://rubicblazor.skyconis.com/api.md) for the reflection-based public component contract.
3. Read [the enums reference](http://rubicblazor.skyconis.com/enums.md) before assigning enum parameter values.
4. If a component has no documentation page, rely only on its public API contract and existing repository usage. Do not infer undocumented behavior.

## Integration

- Add `@using RubicBlazor` to `_Imports.razor`.
- Register the library with `builder.Services.AddRubicBlazorServices()`.
- Add `_content/RubicBlazor/all.css` and `_content/RubicBlazor/all.js` to the host page.
- Register `RubicBlazor.StaticFileHandler` before `UseStaticFiles()`.
- Follow the current [Get Started page](http://rubicblazor.skyconis.com) for hosting-model-specific initialization.

## Implementation rules

- Prefer RubicBlazor components and existing RubicBlazor utility classes over ad-hoc HTML, CSS, or JavaScript.
- Preserve the established patterns of the application and neighboring RubicBlazor components.
- Use documented component parameters and `EventCallback` contracts exactly as declared.
- Treat [documentation examples](http://rubicblazor.skyconis.com/docs.md) as behavioral guidance and [the API reference](http://rubicblazor.skyconis.com/api.md) as the exhaustive public surface.
- Check inherited parameters in the API reference before adding local alternatives.
- Keep custom styling minimal and use the theme and utility system when an equivalent already exists.

## Validation

- Build the affected project after changes.
- Verify interactive behavior in the relevant documentation example or application page.
- Check both light and dark themes when changing colors or surfaces.
- Check RTL when the affected component documents RTL support.
