Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README.md #48

Merged
merged 3 commits into from
Apr 11, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 22 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,23 @@
> This component library is pre-release software.


Native Blazor UI components. Free to use for any Blazor project.

Works seamlessly with [PureBlazor CMS](https://pureblazor.com).
These components are native Blazor UI components that are free to use for any Blazor project. The components also work seamlessly with [PureBlazor CMS](https://pureblazor.com).

# Features

- **Native Blazor** - We want components built for Blazor, not a wrapper around a JavaScript library.
- **Blazing Fast** - We want components that are fast on every platform.
- **Headless Mode** - Fully customizable UI components. Disable all styles with a single property.
- **Tailwind Compatible** - Automatically merge your Tailwind classes with built-in styles.
- **Native Blazor** - The components are built for Blazor. They are not a wrapper around a JavaScript library.
- **Blazing Fast** - The components are fast on every platform.
- **Headless Mode** - The components have a fully customizable UI. You may disable all styles with a single property.
- **Tailwind Compatible** - The components have built-in styles that automatically merge with your Tailwind classes.

[Explore Components](https://pureblazor.com/components)

[Benchmarks](/tests/Benchmarks/README.md)

> [!NOTE]
> This documentation is incomplete. Not all components are documented yet.
> This documentation is incomplete. We have not documented all components yet.
>
> Please feel free to ask questions in the [Discord](https://discord.gg/PeBbYy6WKq), open an issue, or create a pull
> Please, feel free to ask questions in our [Discord server](https://discord.gg/PeBbYy6WKq), open an issue, or create a pull
> request.

# Getting started
Expand Down Expand Up @@ -60,10 +58,9 @@ dotnet add package PureBlazor.Components.AspNetCore

## Theming

PureBlazor components use Tailwind CSS and are designed to be customizable with Tailwind or any custom CSS.
We have designed PureBlazor's components to be compatible with Tailwind CSS so you can customize with Tailwind or any custom CSS.

Additionally, there are more extensibility points for customizing the components with C#. Documentation will come as
this is further solidified.
In the future, we will offer additional extensibility points to customize the components with C#. We will publish documentation on this as we solidify it further.

### Use the default styles

Expand All @@ -73,12 +70,12 @@ Include `pureblazor.css` in your `App.Razor` file, in the `<head>` tag.
<link rel="stylesheet" href="_content/PureBlazor.Components/pureblazor.css" />
```

To customize further on top of these default styles with TailwindCSS, see [tailwind.md](/tailwind.md).
To customize further on top of these default styles with Tailwind CSS, see [tailwind.md](/tailwind.md).

### Ad-hoc customization

All components have a `Styles` parameter that accepts a `string` of CSS classes. If you are using Tailwind, the classes
will be merged with the default styles. The `Styles` parameter is parsed and evaluated for conflicts; conflicting styles
All components have a `Styles` parameter that accepts a `string` of CSS classes. If you use Tailwind, the classes
will merge with the default styles. The `Styles` parameter is parsed and evaluated for conflicts; conflicting styles
passed in here will supersede default classes.

For example, to change the shade of red for the `Danger` accent, which is `bg-red-900` by default:
Expand All @@ -87,7 +84,7 @@ For example, to change the shade of red for the `Danger` accent, which is `bg-re
<PureButton Accent="Accent.Danger" Styles="bg-red-600">Default button</PureButton>
```

### Customizing with C#
### C# customization

You can override the default theme in C# by creating a `PureStyles` object and passing it to a `CascadingValue`.
The `PureStyles` object has properties for each component style.
Expand All @@ -107,9 +104,9 @@ The `PureStyles` object has properties for each component style.

## Headless Mode

Headless mode turns the UI components into completely unstyled, accessible components. Fully customizable.
Headless mode turns the UI components into completely unstyled, fully customizable, and accessible components.

Enable headless mode by setting the `Theme` property to `Off` using a `CascadingValue`. You can do this for individual
You can enable headless mode by setting the `Theme` property to `Off` using a `CascadingValue`. You may do so for individual
components or wrap your entire application in a `CascadingValue`.

```razor
Expand All @@ -120,34 +117,32 @@ components or wrap your entire application in a `CascadingValue`.

# FAQ

### Why not use `xx` library?

Our features section is a good place to start to understand our goals.
### Why not use another `xx` library?

In addition, our components are built to work seamlessly with the PureBlazor CMS.
- We have built these components to work seamlessly with the PureBlazor CMS. In addition, please, review our Features section to understand our broader goals.

### Is this library free to use?

- Yes! This library is free to use for any Blazor project.

### Can I use this library with .NET MAUI Blazor projects?

- This library should work with .NET MAUI, but we have not tested it yet. Please let us know if you have any issues.
- This library should work with .NET MAUI, but we have not tested it yet. Please, let us know if you encounter any issues.

### Can I use this library with Blazor WebAssembly / Blazor Server / InteractiveAuto?

- Yes. This library supports all Blazor hosting models.
- Yes! This library supports all Blazor hosting models.

### Is this library production-ready?

- No. This library is still in development.
- No. This library is pre-release software still in development.

### Do you accept contributions?

- Yes! We accept contributions. Please see the [CONTRIBUTING.md](CONTRIBUTING.md) file for more information.

### How do I report a bug?

- Please open an issue on the [GitHub repository](https://github.com/pureblazor/components/issues/new/choose).
- Please include as much information as possible, including the version of the library you are using, the browser you
- Please, open an issue on the [GitHub repository](https://github.com/pureblazor/components/issues/new/choose).
- Please, include as much information as possible, including what library version and browser you
are using, and any steps to reproduce the issue.
Loading