components icon indicating copy to clipboard operation
components copied to clipboard

Material 3 Expressive

Open smil-thakur opened this issue 7 months ago • 2 comments

Feature Description

As google is developing the all new material 3 expressive https://m3.material.io/blog/building-with-m3-expressive, is there any plans for angular material to use material 3 expressive, will it be a option to toggle expressive on or off, or it will be default and only option available, knowing this can help us for future migration of our projects

smil-thakur avatar May 23 '25 09:05 smil-thakur

We don't have plans to support expressive at the moment, given that a lot of the styles will likely require different markup which makes it difficult to control with tokens. Leaving this issue open for discussions.

crisbeto avatar May 28 '25 08:05 crisbeto

We don't have plans to support expressive at the moment, given that a lot of the styles will likely require different markup which makes it difficult to control with tokens. Leaving this issue open for discussions.

Are there any plans to support the newly added Material 3 components like Button groups, FAB menu, Loading indicator, and Split button, even if full expressive theming isn’t planned?

Thanks!

shimonsalamon avatar May 28 '25 15:05 shimonsalamon

given that a lot of the styles will likely require different markup which makes it difficult to control with tokens.

@crisbeto could you go a little more into the details of what does that mean? Can't M3 styling flags be slowly sprinkled though the components? I was thinking something along the lines of adding a "lower padding" flag for a event a new variant for like buttons to start with and move on one by one? Or that would make the components too big? Too many variants?

samuelhnrq avatar Jun 09 '25 21:06 samuelhnrq

As Material Web is in maintenance mode, this would be great!

cosmicallyrun avatar Jun 28 '25 18:06 cosmicallyrun

Leaving this issue open for discussions.

What end-goal should the discussion have? Evaluate how good of a case can be made for needing it? Or whether there are good ideas through which it could be cheap to implement?

As Material Web is in maintenance mode, this would be great!

Isn't material web an entirely separate issue? Or would the hope have been that Material web would implement support for M3-Expressive ?

PhilippMDoerner avatar Jul 04 '25 17:07 PhilippMDoerner

Isn't material web an entirely separate issue? Or would the hope have been that Material web would implement support for M3-Expressive ?

Yeah, because material web went to maintenance mode, I switched to angular/angular material.

cosmicallyrun avatar Jul 04 '25 23:07 cosmicallyrun

Hi! Just an everyday material user here and thought I'd provide my 2 cents, not sure if it helps at all.

I'm sure this undertaking won't be easy by any means, but it seems like a good goal to progressively support m3e design overtime. Some reasons why would be the deprecation of the navigation drawer in favor of the navigation rail (link) and the floating toolbar being added (link).

These seem to follow the same direction that many web applications are taking with their design, and I'm sure many angular devs would love to utilize these components to make their applications keep up with modern UI.

I agree that it would be good to keep the existing design tokens as many devs are just getting used to them (I've been a big fan).

Perhaps its possible to start small with some smaller parts as mentioned above by @shimonsalamon . Maybe one approach (don't hate me for this) is to make some separate 'expressive' components that follow m3e specs, but are separate from existing components. They would use selectors like 'matx-component-name' where the 'matx' signifies that this is part of the expressive package of components and would have been made to work with the newer specs. This would also allow us to not overlap with any current design tokens.

Gosh I hope that all makes sense, let me know what everyone thinks!

drewmore02 avatar Sep 29 '25 22:09 drewmore02

I know this comment isn't helpful, but this decision seems quite interesting given Google uses this for many of its important web products :) So far I've not seen any M3E slider in their web apps..

zb3 avatar Oct 14 '25 16:10 zb3