Replace FontAwesome with Phosphor + custom Pulumi icons#18764
Replace FontAwesome with Phosphor + custom Pulumi icons#18764jeffmerrick merged 37 commits intomasterfrom
Conversation
|
Claude finished @cnunciato's task in 3m 16s —— View job Docs review — fourth pass
All third-pass items are resolved. The two new commits are clean. Here's what I checked: FA straggler sweep — looks good
Sizing / alignment fixes — looks good
Template doc comments — all 5 updated
Minor (non-blocking)
This PR is ready to merge. The FA migration is complete: no remaining font dependencies, no broken icon paths, no stale SCSS pseudo-element glyphs, all template doc comments updated. The only outstanding item is visual verification of the two registry components ( |
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
0521f96 to
739ef16
Compare
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
Cleanup follow-ups noticed visually after the migration. Phosphor SVGs ship with `width: 1.25em; vertical-align: -0.225em` from the base .ph-icon style, which works fine for inline-with-text contexts but needs scoped overrides in tighter UI chrome. - theme/src/scss/_buttons.scss: scroll-to-top chip is now a 16x16 flex-centered square (down from 32x16) on a darker bg-gray-800, with the SVG clamped to w-3 h-3 (12x12) so it reads as an icon button rather than a stretched slab. - theme/src/scss/components/_docs-nav.scss: clamped the docs-nav toggle button SVG to w-3.5 h-3.5 (14x14, closer to FA's old caret-right footprint), dropped the explicit width: 1.2rem on the button (the SVG sets the size), and added mb-0.5 to nudge the icon onto the text's vertical center. - layouts/partials/docs/feedback.html and layouts/partials/tutorials/feedback.html: removed pl-2 from the feedback container and softened the divider in docs/feedback.html from border-gray-300 to border-gray-200. Aligns the feedback block's left edge with the surrounding sidebar items now that the icons no longer need that left padding. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
739ef16 to
3969385
Compare
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
cnunciato
left a comment
There was a problem hiding this comment.
I was so excited to see this done that I took the liberty of going a few rounds with Claude and making a handful of manual adjustments to finish it off. I think it's in excellent shape and ready to be merged, but I'll let you do the honors @jeffmerrick in case there's anything still left that I missed.
🎉
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
|
🟰 Skipping social media review — no blog files changed since prior review. The verdict from the prior run still applies. Comment |
Another monster PR again, but really the only way I could see to tackle fully replacing FontAwesome. Uses an SVG sprite so should be performant, and easy enough to add new icons to. I clicked around and checked out many pages but could use some more eyes just to confirm icons aren't missing and the swaps make sense everywhere.
This does touch some blog/tutorial files that had FontAwesome icons in them.Generated summary of changes:
Migrates the entire site off FontAwesome and onto a sprite-based Phosphor icon system, with a small set of custom Pulumi product icons (IaC, Secrets, Insights, IDP, Neo).
New icon system
brand/,custom/, andphosphor/prefixes plusweight,size,class, andtitleparams.assets/icons/{brand,custom,phosphor}/— 7 brand icons, 5 custom Pulumi product icons (× 4 weights), and 1,512 Phosphor icons (× 4 weights: regular, bold, fill, duotone).Removed
theme/src/scss/fontawesome/*(~13 files, ~8,400 lines).static/fonts/fontawesome/*font binaries (~9,000 lines).theme/src/scss/_icons.scsscustom icon classes.Migrated (~95 layout/template/shortcode files)
<i class="fa-…">and legacypartials/icons/X.htmlreference replaced with the new icon partial or shortcode.docs/_index.md,iac/_index.md,esc/_index.md, etc. use the new custom Pulumi product icons.icon:names.{{ partial }}→{{< icon >}}shortcode.Notes / alerts
fill(solid) weight and inherit each variant's color viacurrentColor.--color-{violet,green,orange}-{primary,muted,background}) instead of hard-coded hexes.install-*,cli-note,related-posts, etc.) updated to passweight=fill.Misc fixes
pulumi-install/pulumi-llm-menuStencil components (replacing the last FA stragglers in dynamically injected JS).Notes:
make ensureto regenerate it locally.