dequelabs / cauldron

https://cauldron.dequelabs.com/
Mozilla Public License 2.0
86 stars 20 forks source link

PROPOSAL: Consolidate icons into a single library and map old icons to new icons #869

Open bobbyomari opened 1 year ago

bobbyomari commented 1 year ago

The Problem

Today, our designs are using multiple icon libraries – this is creating inconsistencies between icons throughout our products where icons might be too thin, too thick, too small, too large, etc. We are mixing libraries of UXPin, Font Awesome, Material UI, and none of which were made to work together.

Proposal

Let's consolidate the icons to use Font Awesome 6 Pro so we can take advantage of their full repository of icons that are all accessible and create consistency between our iconography library. I am suggesting Font Awesome because they have a very extensive and allow for a lot of parameters to be passed such as icon rotation, icon stacking, light/solid/thin/duotone icons, and much more. Additionally, if there are unique icons that are not part of FA6, we could upload custom icons as well as they have a method for that in their documentation. For more information about Font Awesome 6 visit: https://fontawesome.com/plans

Need to do

If we can confirm that it is OK to switch, then I can work on selecting icons that will map from old to new and include them in this ticket.

Links (SVGs can be downloaded from UXPin Design System)

Icon Mapping

New Icons

scurker commented 1 year ago

When this gets initially implemented, we don't want to change the name yet but save that for a later breaking change. We may want to consider alias for the time being to support both names until we remove support for the old name.

scurker commented 8 months ago

Whatever we decide on, we should document the actual guidelines we expect icons to follow. Some examples below:

I don't think we need to be as verbose as what's above, but namely document the grid + padding we're using as well as general style to ensure new icons are consistent with the guidelines. If we're using font awesome, we could just specify that it must originate from there and list whatever guidelines we want to use.

anastasialanz commented 1 week ago

Font Awesome has a "Setup with React" page https://docs.fontawesome.com/web/use-with/react/