What is the difference between MatBlazor and Material.Blazor?

5.9k views Asked by At

Of the packages that bring Material Design to Blazor ASP.Net Core apps, there are two that seem very similar, namely MatBlazor and Material.Blazor. Even the respective documentation pages (e.g. MatBlazor button and Material.Blazor button) are very similar.

Having used MatBlazor before, but not having used Material.Blazor before, I would like to know the key differences between the two packages, to help me decide which to use moving forwards.

MatBlazor was first released in 2018 and Material.Blazor was first released in 2020. The packages appear to have different authors, with just a single contributor contributing to both projects on github (MatBlazor github, Material.Blazor github).

What are the key differences between MatBlazor and Material.Blazor?

1

There are 1 answers

2
COleson On BEST ANSWER

As a contributor to MatBlazor, I can tell you there are definitely some differences. You’re comparing MatBlazor and Material.Blazor, but in truth there are many of these packages, including MudBlazor, Blazorise, Radzens Material components, and more. Each library aims to implement material design components for ASP.NET Core Blazor.

How each library does this depends on the Author. For example, MatBlazor, behind the scenes, actually has a decent amount of JavaScript running the show, whereas MudBlazor aims to be mostly Blazor, with as little JS as possible.

Now, in particular with MatBlazor and Material.Blazor, both appear to be somewhat intermittently be released. Material.Blazor has less stars, less contributions, and also less open issues. It seems simply to be a younger library.

As I said, I am a contributor for MatBlazor, and I don’t think it is an accurate picture that there is a single contributor. I think you are simply seeing someone with write access merging PRs, as the other PRs are written to folks forked versions of MatBlazor and then requested to someone with write access to be merged to dev. I personally know of at least 5 contributors, though the consistency and amount of contribution has varied over the past few months.

So, I would evaluate these libraries based on need (does it have everything in the docs that you would need to use) as well as utilization (how many stars, forks, etc exist to show others using it, meaning it should be more robust) as well as how much active contribution is being done on the project.

I hope we win you to MatBlazor, but regardless, Blazor on!