Makani 0.0.2-alpha
See the version list below for details.
dotnet add package Makani --version 0.0.2-alpha
NuGet\Install-Package Makani -Version 0.0.2-alpha
<PackageReference Include="Makani" Version="0.0.2-alpha" />
paket add Makani --version 0.0.2-alpha
#r "nuget: Makani, 0.0.2-alpha"
// Install Makani as a Cake Addin #addin nuget:?package=Makani&version=0.0.2-alpha&prerelease // Install Makani as a Cake Tool #tool nuget:?package=Makani&version=0.0.2-alpha&prerelease
🏖️ makani
Collection of UI components built specifically for .NET MAUI Blazor
Why Makani?
Makani was born based on the need for lightweight, performant, and customizable UI components for .NET MAUI Blazor. Makani is built on the wonderful CSS framework, Tailwind CSS. While a simple theme will be included, the hope is that the community is able to customize the theme to fit their needs.
The main focus of the Makani library is to provide a powerful set of components that work flawlessly with .NET MAUI Blazor.
🏗️ Design Principles
- Built first and foremost for .NET MAUI Blazor
- Components should be easy to customize
- Components should be composable, extensible, and performant
- Always listen to the community
⚠️ This library is currently under active development. You may experience bugs, breaking changes, or missing functionality.
🚀 Getting Started
Quick Start
1. Install via NuGet
dotnet add package Makani
2. Update your _Imports.razor
@using Makani
3. Add Makani
builder.Services.AddMakani();
4. Build away!
<MkButton Color="MkColor.Primary">Hello world!</MkButton>
Using Syntax Highlighting
The syntax highlighting component is an optional feature. If you don't need this feature, skip this section and avoid loading the additional resources.
Makani is using Prism for syntax highlighting, so if you need this component, a few more steps are needed.
In your index.html
, add only one of the following themes to the <head>...</head>
section:
<link href="_content/Makani/css/vscode-dark-plus.css" rel="stylesheet" />
Add the following JS to the end of the <body>...</body>
section:
<script src="_content/Makani/prism.js"></script>
📖 Documentation
Extensible Design Documentation
Performance / Benchmarks
Providing a lightweight and performant component library is a major goal of this project.
Area | Target | Actual | Passing |
---|---|---|---|
DLL Size | 200kb | 26.4kb | ✔️ |
JS Bundle Size | 10kb | 392b | ✔️ |
CSS Bundle Size | 50kb | 4.6kb | ✔️ |
Time to Interactive | 1s | 0.6s | ✔️ |
Total Blocking Time | 200ms | 140ms | ✔️ |
Cumulative Layout Shift | 0 | 0 | ✔️ |
First Contentful Paint | 0.5s | 0.3s | ✔️ |
RAM Usage | TBD | ||
CPU Usage | TBD | ||
First Input Delay | TBD |
The targets specified are only initial estimates and are open to change over time based on a reasonable standard.
Sources
- https://blog.openreplay.com/top-metrics-you-need-to-understand-when-measuring-front-end-performance
- https://developer.mozilla.org/en-US/docs/Learn/Performance/Measuring_performance
Accessibility
A UI component library isn't helpful if it isn't useful to everyone.
TBD
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. |
-
net6.0
- Microsoft.AspNetCore.Components.Web (>= 6.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 | |
---|---|---|---|
0.0.6 | 503 | 6/28/2022 | |
0.0.5-alpha1 | 189 | 6/8/2022 | |
0.0.2-alpha | 189 | 6/7/2022 | |
0.0.1-alpha3 | 178 | 5/31/2022 | |
0.0.1-alpha2 | 186 | 5/27/2022 | |
0.0.1-alpha1 | 187 | 5/27/2022 |
initial early release