Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consolidate Icon library. #8777

Open
kbrock opened this issue May 2, 2023 · 4 comments
Open

Consolidate Icon library. #8777

kbrock opened this issue May 2, 2023 · 4 comments

Comments

@kbrock
Copy link
Member

kbrock commented May 2, 2023

We use a number of different icon libraries: font-fabulous, font-awesome, patternfly icons, and possibly carbon icons.

The reason for so many libraries is due to the fact that font fabulous and patternfly did not have all the icons we needed. Now that we are transitioning to carbon components, do we have plans to move our icons over to that library

Patternfly includes some (all?) of font-awesome free. So there is a little overlap.
We have at least 2 versions of font-awesome (sass and regular version) linked from our legacy scss.

These all take up disk space, download time (css, fonts, svgs, pngs?), and are not visually consistent.

Questions

  • Are we moving towards carbon component icons, or does that also not meet our needs?
  • Does the carbon component framework also have a css or font library that handles a <i class="fa fa-file"> type usage pattern? This would make transitioning easier.
  • Do we need to worry about this or are we thinking that once we convert over to carbon this problem will go away?

Status

This is what I have been able to deduce.

prefix library count updated
ff- Font Fabulous 137 2019 manageiq specific
fa- font-awesome 68 2023 using version 4.7 (2016) current
pficon- patternfly 80 N Think we're deprecating
? carbon 2022 Y

Notes:

cd manageiq-ui-classic
ag --nofilename -o '(ff-.[^ ",@'\']*\) | sort -u
@kbrock
Copy link
Member Author

kbrock commented May 2, 2023

This came about because I was adding an icon and saw font fabulous and wondered if we could just drop it.
I found some low hanging fruit but then I wondered if we had a plan/destination in mind.

ff icon fa icon
ff-group fa-users
ff-orphans fa-chain-broken (could be use for many)
ff-cloud fa-cloud
ff-database fa-database
ff-user fa-user-o (or fa-user)
ff-file-* fa-file-* (some conversions)
ff-font fa-fonticons

@Fryguy
Copy link
Member

Fryguy commented May 2, 2023

Ideally we would move completely towards carbon and drop pf, ff and fa. patternfly will go away once we can drop the patternfly libraries, but if we can convert them to something else ahead of time that might be a short-term win. If carbon doesn't have what we need, ideally we should prefer something off-the-shelf, so I'd prefer fa over ff in that case.

@Fryguy
Copy link
Member

Fryguy commented May 2, 2023

That being said I don't think carbon has a nice css way to add the icon. I think instead each one is a react component, which is honestly really bulky, IMO. @jeffibm might know more on this one. We might be able to work with the carbon team to convert these to actual font icons if we need it.

@jeffibm
Copy link
Member

jeffibm commented May 4, 2023

Yes, including the icons from carbon is like adding a new component.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants