Skip to content

Material Design components for Blazor and Razor Components

License

Notifications You must be signed in to change notification settings

djinnet/MatBlazor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MatBlazor MatBlazor

Material Design components for Blazor and Razor Components

NuGet Gitter GitHub Stars GitHub Issues Live Demo MIT Donate Patreon

MatBlazor comprises a range of components which implement common interaction patterns according to the Material Design specification.

Demo and Documentation

Prerequisites

Don't know what Blazor is? Read here

Complete all Blazor dependencies.

  • .NET Core 3.0 Preview 4 SDK (3.0.0-preview4-19216-03)
  • Visual Studio 2019 Preview 4 with the ASP.NET and web development workload selected.
  • The latest Blazor extension from the Visual Studio Marketplace.
  • The Blazor templates on the command-line: dotnet new -i Microsoft.AspNetCore.Blazor.Templates::3.0.0-preview4-19216-03

Installation

Latest version in here: NuGet

To Install

Install-Package MatBlazor

or

dotnet add package MatBlazor

MatBlazor components for server-side Blazor (Razor Components)

Used EmbeddedBlazorContent library: NuGet

  • Startup.cs
app.UseEmbeddedBlazorContent(typeof(MatBlazor.BaseMatComponent).Assembly);
  • _Host.cshtml (head section)
@using EmbeddedBlazorContent
<head>
    ...
    @Html.EmbeddedBlazorContent()
</head>

Usage

MatBlazor Buttons Example

<MatButton OnClick="@Click">Text @ButtonState</MatButton>
<MatButton Raised="true">Raised</MatButton>
<MatButton Unelevated="true">Unelevated</MatButton>
<MatButton Outlined="true">Outlined</MatButton>
<MatButton Dense="true">Dense</MatButton> 

@functions
{
  string ButtonState = "";
  void Click(UIMouseEventArgs e)
  {
    ButtonState = "Clicked";
  }
} 

Sponsors & Backers

MatBlazor does not run under the umbrella of any company or anything like that. It is an independent project created in spare time. The development is active and we are working hard to release great things for you.

If you think that this project helped you or your company in any way, you can consider becoming a backer/sponsor.

Backers:

News

MatBlazor 1.5.2

  • PR: Adding example for nested sub menus and new "toggle all" feature #176 (Thanks to ebekker)

MatBlazor 1.5.1

  • PR: Adding support for nested NavSubMenus #174 (Thanks to ebekker)

MatBlazor 1.5.0

  • MatCard improvements

MatBlazor 1.4.1

  • MatTypography improvements

MatBlazor 1.4.0

  • New NavMenu - new component (Thanks to enkodellc)
  • PR: NumericUpDown to preview7. Fix tabindex #161 (Thanks to ctrl-alt-d)
  • PR: Outlined #162 (Thanks to ctrl-alt-d)

MatBlazor 1.3.0

  • Update to .NET Core 3.0 Preview 7
  • All components supports @Attributes and Id parameter
  • MatDatePicker parameters: Label, Dense, Outlined, Required, Disabled
  • PR: Fixed up the helper text functionality in MatTextField. #121 (Thanks to jorgy343)
  • PR: MatSelect Updates #124 (Thanks to jorgy343)
  • PR: Typo. Mode is hardcoded #128 (Thanks to ctrl-alt-d)
  • PR: fix upper cases for linux env #130 (Thanks to ctrl-alt-d)
  • PR: Improve Full Width Field Text Padding #131 (Thanks to ctrl-alt-d)
  • PR: #89 MatTable Row Hover & Select #135 (Thanks to enkodellc)
  • PR: MatTable style updates #112 (Thanks to enkodellc)
  • PR: MatListItem Disabled #111 (Thanks to enkodellc)
  • PR: Fixed a bug where Table would not re render after data changed. #110 (Thanks to Garderoben)
  • Now we have MatBlazor - Documentation and demo website - Client Side Blazor
  • Fixed: Docs site looks to show bug for expansion panel #107

MatBlazor 1.2.0

  • .NET Core 3.0.100-preview6-012264
  • MatToast (Thanks to enkodellc)
  • MatNumericUpDownField (Thanks to ctrl-alt-d)
  • PR: MatTable bug where LoadData would throw exception when using Filter #101 (Thanks to Garderoben)

MatBlazor 1.1.1

  • Fixed Clicking on Icon in DatePicker doesn't show the calender selection window. #86

MatBlazor 1.1.0

  • MatHidden

MatBlazor 1.0.1

  • Material theme configuration #90

MatBlazor 1.0.0

  • MatAccordion, MatExpansionPanel
  • MatTooltip
  • ForwardRef concept

MatBlazor 0.9.14

  • MatFAB - Floating Action Button

MatBlazor 0.9.13

  • MatThemeProvider (Themes support)
  • MatAppBarContainer, MatAppBarContent
  • PR: MatNumericUpDownField #78 - early preview (ctrl-alt-d)
  • MatMenu fix (added class and style support)

MatBlazor 0.9.12

  • MatDatePicker (alpha)
  • MatTextField ReadOnly
  • MatTextField InputClass and InputStyle
  • MatButton Type, Name, Value #75

MatBlazor 0.9.11

  • MatTabGroup and MatTab components
  • MatTabBar and MatTabLabel components

MatBlazor 0.9.10

  • Update to ASP.NET Core 3.0.0-preview5-19227-01
  • https://www.matblazor.com working as server-side Blazor on Linux server
  • Fix MatAutoComplete
  • Minor improvements and changes

MatBlazor 0.9.9

MatBlazor 0.9.8

MatBlazor 0.9.7

  • Fixed Drawer problem

MatBlazor 0.9.6

  • All components in one namespace MatBlazor (only one using directive)
  • PR: Revert back to C# 7.3 #66 (enkodellc)

MatBlazor 0.9.5

  • Fixed problem with including *.razor files
  • PR: #63 MatBlazor Logo / .svg / .ico #65 (enkodellc)

MatBlazor 0.9.4

  • Now we have Logo (many thanks to enkodellc)
  • PR: Prevent *.razor files from being packed #64 (IvanJosipovic)
  • Fixed Examples generation

MatBlazor 0.9.3

  • Update to Blazor 3.0.0-preview4-19216-03
  • PR: MatTable Table Filter, get data from API #61 (enkodellc, arivera12)
  • PR: Fix Table Navigation Error #60 (enkodellc)

MatBlazor 0.9.2

  • PR: MatTable Version 1 #58 (enkodellc, arivera12)

MatBlazor 0.9.1

  • PR: Fixed #50 Autocomplete FullWidth + #52 (sandrohanea)
  • PR: MatIconButton Add Functionality, Update Demo #53 (enkodellc)
  • PR: Added documentation for autocomplete + Fixed #56 + changed documentation file path to a relative one(instead of absolut) #57 (sandrohanea)

MatBlazor 0.9.0

  • Creating partial documentation for all components (autogeneration)
  • Improved many examples
  • Improved homepage, components page design, README.md
  • Change of versioning policy is similar to Blazor
  • Fixed MatTextBox FullWidth Padding / Icon Fix #43 #51 (enkodellc)

MatBlazor 0.6.17

  • Fixed Select is showing native arrow? #48 (sandrohanea)

MatBlazor 0.6.16

  • New component MatAutocomplete (sandrohanea)

New domain name

MatBlazor 0.6.15

  • New component MatSnackbar

MatBlazor 0.6.14

  • New component MatRipple

MatBlazor 0.6.13

  • New styles Layout Grid

MatBlazor 0.6.12

  • New component MatDialog
  • MatCheckbox add inline label (enkodellc)

MatBlazor 0.6.11

  • New component MatProgressBar

MatBlazor 0.6.10

  • New styles Elevation
  • License of used packages added to js boundle

MatBlazor 0.6.9

  • Changed all events to EventCallback
  • Show Icons when MatTextField has FullWidth (enkodellc)

MatBlazor 0.6.8

  • Improved events for MatTextField (sandrohanea + SamProf)

MatBlazor 0.6.7

  • Added Typography styles

MatBlazor 0.6.6

  • Added Href parameter to MatListItem component

MatBlazor 0.6.5

  • MatTextField - fixed label

MatBlazor 0.6.4

  • MatMenu - first working implementation

MatBlazor 0.6.3

  • New MatDrawer
  • Fix MatAppBar (fixed-adjust div)

MatBlazor 0.6.2

  • Added Style Parameter for all components
  • Added BaseMatComponent Docs
  • MatDrawer in progress

MatBlazor 0.6.1

  • Introduce Razor Components support (MatBlazorInstall component)

MatBlazor 0.6.0

  • Upgrade Blazor 0.9 complete
  • Upgrade to new Material Components
  • MatTextField Outlined fixed
  • MatRadioGroup and MatRadioButton enhancements
  • MatSelect Outlined fixed
  • MatSlider Step problem founded
  • Fixed main page of the demo project MatDrawer
  • MatMenu (prepared for development in next release)
  • MatDrawer (prepared for development in next release)
  • BlazorFiddle integration fixed

MatBlazor 0.5.0

  • Upgrade to Blazor 0.9.0 (Part 1)

MatBlazor 0.4.5 (Minor)

  • TrailingIcon in MatButton

MatBlazor 0.4.4

  • Added integration with BlazorFiddle.com
  • MatIconButton - Href bacame Link

MatBlazor 0.4.3

  • Upgrade to Blazor 0.7.0
  • MatDrawer in progress

Questions

For how-to questions and other non-issues, for now you can use issues or you can use Gitter.

Contributing

We'd greatly appreciate any contribution you make. :)

Roadmap

In the near future we plan to maximize the count and features of the components inspired by other frameworks like Angular Material, React Material UI and Vue Material.

  1. Implementation of base functionality from MDC Web
  2. Implementation of first versions of more rich components, like Table, AutoComplete, Accordion (Expansion Panel), Calendar, DatePicker and etc.
  3. Improvement existing component's functionality. Make API near the same as Angular Material (or React, Vue)
  4. JS-less. Implement components as much as possible without using JS.

License

This project is licensed under the terms of the MIT license.

Thank you

About

Material Design components for Blazor and Razor Components

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 50.8%
  • C# 44.2%
  • JavaScript 2.5%
  • CSS 2.4%
  • Batchfile 0.1%