mui / material-ui

Material UI: Comprehensive React component library that implements Google's Material Design. Free forever.
https://mui.com/material-ui/
MIT License
93.48k stars 32.16k forks source link

[icons] Accept community icons on top of fonts.google.com/icons #23289

Open sandorvasas opened 3 years ago

sandorvasas commented 3 years ago

Eraser and push pin icons are really missing, and they are much more general and relevant to most applications than e.g. pregnant woman.

oliviertassinari commented 3 years ago

@sandorvasas As we speak, the icons are sourced as follow:

  1. We import all the icons from https://material.io/resources/icons/. Done in: https://github.com/mui-org/material-ui/blob/0aefc928b00788b0ec5f74842b7c9704a354cf4a/packages/material-ui-icons/package.json#L35
  2. We remove icons that are cover niche use cases. Done in: https://github.com/mui-org/material-ui/blob/0aefc928b00788b0ec5f74842b7c9704a354cf4a/packages/material-ui-icons/builder.js#L17-L30
  3. We add custom icons for very frequently used icons, so far the social icons, e.g. Facebook. Done in: https://github.com/mui-org/material-ui/blob/0aefc928b00788b0ec5f74842b7c9704a354cf4a/packages/material-ui-icons/builder.js#L279

We haven't considered authoring our own icons, so far. However, it could make sense to push in this direction considering that Google seems to have ignored the feedback of the community for the last 2 year+. For instance, we could accept icons that have been significantly upvoted in https://github.com/google/material-design-icons/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc.

Also mind that in the documentation, we link complementary projects that cover this problem: https://mui.com/material-ui/icons/#other-libraries.

eps1lon commented 3 years ago

These two are really missing,

~Which "two" are you talking about?~ Clarified after looking at original title

they are much more general and relevant to most applications than e.g. PREGNANT WOMAN.

Could you clarify what "general" icons are to you? How you would define "most applications" and how are pregnant women not relevant to those?

From my own personal experience I know at least one usage of that icon: on alcoholic beverages.

mbrookes commented 3 years ago

When we added the social icons, I commented that we should avoid the slippery slope and resist the temptation to add other complementary icons. It's a never ending task that will quickly get out of hand - just look at some of the monster icon libraries out there.

We provide links to third-party icon libraries, and multiple methods for creating your own. On that basis I believe this should be closed as "wontfix".

oliviertassinari commented 3 years ago

It's a never ending task that will quickly get out of hand - just look at some of the monster icon libraries out there.

@mbrookes Definitely, the opportunity might be too high. I was more interested in 1. gauging the interest of the community for this and 2. consider including the most frequently missing searched icons on the website (using the Analytics).

NawarA commented 3 years ago

How often is the script above run? I'm observing we're missing icons that are present on material.io, for example image

doesn't exist in MUI...though its clearly a very common icon, that developers would expect in there

Perhaps a cron should run daily or weekly to sync everything? Or perhaps be triggered when a branch changes?

oliviertassinari commented 3 years ago

@NawarA https://next.material-ui.com/components/material-icons/

NawarA commented 3 years ago

Nice, looks like icons will sync on every semantic diff 👍

mbrookes commented 3 years ago

@oliviertassinari Any reason that these can't be published under v4?

oliviertassinari commented 3 years ago

The same as before? Encourage adoption and feedback on v5, the more users, and the earlier they are using it, the best feedback loop.

mbrookes commented 3 years ago

So not really then. There's nothing specific to the Material Icons to get feedback on, so holding them to ransom doesn't make a huge amount of sense.

CareerFairPlus commented 3 years ago

+1 for adding this support to v4. We're in need of the latest icon support in v4. When implementing or upgrading, we're not going to use an alpha release of v5 in our production environment. We have a need for the Material "groups," "content_copy," as well as other icons. To bridge the gap, we're manually pulling the SVG and creating custom components, but that's going to quickly become some expensive technical debt that we will have to address when upgrading to v5 once it reaches stable release.

ydax commented 3 years ago

I would definitely be interested in expanding the icon package. Why doesn't Material UI just support the full material icons set?

DanielHabenicht commented 3 years ago

Adding to this issue the material icons for content_copy are missing from the library and they are very common to use. (https://fonts.google.com/icons?selected=Material+Icons&icon.query=content_)

oliviertassinari commented 3 years ago

I have marked all the comments related to how @material-ui/icons doesn't include the icons of https://fonts.google.com/icons as it's off-topic. This issue is about whether or not we should reproduce what materialdesignicons.com did by sourcing icons from the community.

As of today, to rare exceptions, all the icons of https://fonts.google.com/icons are available in @material-ui/icons@v5.0.0-alpha.28, currently available at https://next.material-ui.com/components/material-icons/.